스프링부트 시작하기(이클립스 vs 인텔리제이)
- 참조 :
- Eclipse로 개발환경 설정하기
- JDK 설치 : jdk1.8.0_241 설치(64비트용) : https://www.oracle.com/java/
- 이클립스 설치 : https://www.eclipse.org/downloads/packages/
- 이클립스에 STS 추가 :
- STS : 이클립스에서 Spring 응용 프로그램 개발을 위해 만들어진 개발환경
- 이클립스 Help 메뉴 -> Eclipse Marketplace 메뉴 선택
- Find에서 STS 검색 후 2개 모두 설치
- Find에서 buildship 검색해서 Minimalist Gradle Editor 1.0.1 설치
- Confirm Selected Features -> Confirm
- Review Licenses -> I accept the terms of the license agreements
- 스프링 프로젝트 생성하기
- Eclipse의 File -> New -> Other -> Spring Boot -> Spring Starter Project
- 프로젝트 우 클릭 -> Run As -> Spring Boot App 클릭
- Console에 다음과 같이 출력되면 성공
123456789101112131415161718192021. ____ _ __ _ _/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \\\/ ___)| |_)| | | | | || (_| | ) ) ) )' |____| .__|_| |_|_| |_\__, | / / / /=========|_|==============|___/=/_/_/_/:: Spring Boot :: (v2.2.6.BUILD-SNAPSHOT)2020-03-15 19:01:22.091 INFO 24848 --- [ restartedMain] kr.co.moak.Exam01Application : Starting Exam01Application on MoakPC with PID 24848 (E:\WorkSpace\Exam01\bin\main started by whan in E:\WorkSpace\Exam01)2020-03-15 19:01:22.093 INFO 24848 --- [ restartedMain] kr.co.moak.Exam01Application : No active profile set, falling back to default profiles: default2020-03-15 19:01:22.120 INFO 24848 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable2020-03-15 19:01:22.120 INFO 24848 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'2020-03-15 19:01:22.675 INFO 24848 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)2020-03-15 19:01:22.680 INFO 24848 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat]2020-03-15 19:01:22.680 INFO 24848 --- [ restartedMain] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.31]2020-03-15 19:01:22.751 INFO 24848 --- [ restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext2020-03-15 19:01:22.751 INFO 24848 --- [ restartedMain] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 631 ms2020-03-15 19:01:22.862 INFO 24848 --- [ restartedMain] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor'2020-03-15 19:01:22.942 INFO 24848 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 357292020-03-15 19:01:22.970 INFO 24848 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''2020-03-15 19:01:22.972 INFO 24848 --- [ restartedMain] kr.co.moak.Exam01Application : Started Exam01Application in 1.08 seconds (JVM running for 2.319)
- Console에 다음과 같이 출력되면 성공
- HelloWorld 출력
- kr.co.moak.controller 패키지 생성
- HelloController.java 클래스 생성
1234567891011121314package kr.co.moak.controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class HelloController {@RequestMapping("/")public String hello() {return "Hello World";}} - @RequestMapping(“/”) -> @GetMapping(“/”)으로 변경됨
- 웹브라우저에 http://localhost:8080 입력하면 Hello World 출력되면 성공
- Hello Sub 출력
- HelloController.java 클래스 수정
1234567891011121314151617181920package kr.co.moak.controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class HelloController {@RequestMapping("/")public String hello() {return "Hello World";}@RequestMapping("/sub")public String sub() {return "Hello Sub";}} - 웹브라우저에 http://localhost:8080/sub 입력하면 Hello Sub 출력되면 성공
- HelloController.java 클래스 수정
- 새로 실행시키기 전에 항상 웹을 중지시켜야 함
- 인텔리제이(Intellij)로 개발환경 구성하기
- IntelliJ Ultimate 버전 : 유료
- Spring Initializer 가 기본으로 있음
- spring-boot-starter-parent와 spring-boot-starter-web 의존성
- spring-boot-maven-plugin 빌드 플러그인 포함
- Spring Initializer 가 기본으로 있음
- IntelliJ Community 버전 : 무료
- Spring Initializer 를 기본으로 사용 불가
- https://start.spring.io/ 에 접속해서 프로젝트를 생성하여 불러오는 것이 편리
- Project : Gradle Project
- Language : Java
- Spring Boot : 2.2.5
- Group : kr.co.moak
- Artifact : demo
- Packaging : Jar
- Java : 8
- Dependencies : Lombok, Spring Web
- Generate – Ctrl 을 누르면 demo.zip으로 저장됨
- demo.zip을 압축을 풀고 IntelliJ에서 불러오기
- src/main/java/kr.co.moak.demo/DemoApplication.java 열고 Run->Run 메뉴 실행하고 웹브라우저에서 http:/localhost:8080 접속했을 때 다음과 같은 결과가 나오면 성공
- HelloWorld 출력
- kr.co.moak.controller 패키지 생성
- HelloController.java 클래스 생성
1234567891011121314package kr.co.moak.controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class HelloController {@RequestMapping("/")public String hello() {return "Hello World";}} - @RequestMapping(“/”) -> @GetMapping(“/”)으로 변경됨
- 웹브라우저에 http://localhost:8080 입력하면 Hello World 출력되면 성공
- Hello Sub 출력
- 위 이클립스와 동일
- 새로 실행시키기 전에 항상 웹을 중지시켜야 함
- IntelliJ Ultimate 버전 : 유료