[Spring Boot] 스프링 부트 기초 - 1 [프로젝트 생성 및 실행]

리트리버J

·

2021. 5. 24. 22:22

728x90

스프링 부트의 기초를 잡는 시간이 되었으면 좋겠다.

 

첫번째로, STS에서 프로젝트를 바로 생성 할 수도 있지만,

 

친절하게도 spring iniltializr에서 초기 셋팅을 할 수 있게 도와준다.

 

https://start.spring.io/

1. Maven인지 Gradle인지

2. Java인지 Kotlin인지 Groovy인지

3. Boot의 버전

4. Project 패키지 등 설정

5. Jar인지 War인지

6. Java의 버전 (나중에 바꿀 수 있음)

7. 의존성 주입

 

스프링 부트의 기본적인 사용방법을 알아보기 위하여 간단하게

Spring Web / PostgreSQL Driver / JPA 의존성을 주입시켰다.

 

하단의 GENERATE를 클릭하면 zip파일로 다운이 된다.

압축 해제 후 STS를 실행시켜 Import 해보자.

 

Package Explorer > 오른쪽 마우스키 > import > Maven > Existing Maven Projects > Browse

압축 해제 한 폴더에 들어간 후 폴더 선택을 해주면 끝이다.

 

잠시 시간이 지나면 프로젝트 구조가 자리를 잡아 위와 같은 형태를 나타낼 것이다.

(※ 보이는 형태가 조금 다를 수 있습니다.)

 

src > main > resources > application.properties 는 중요한 파일이다.

DB정보와 어플리케이션의 중요 정보를 작성하는 곳이다.

 

DemoApplciation.java에 가서 ctrl + F11를 눌러 Spring Boot App으로 실행시켜보자.

 

실행이 되지 않는다.

 

에러에 익숙해지자.

Description:

Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

Reason: Failed to determine a suitable driver class

 

URL 속성이 명시되어 있지 않고, embedded datasource가 정의 된 것이 없다고 나온다.

=> JPA의 dependency가 존재하는데, 속성을 지정해주지 않았기 때문이다.

 

pom.xml의 JPA를 주석처리하고 실행하자.

보통은 여기서 실행이 되겠지만

 

이 글을 보고 있다면 스프링좀 만져본 사람이 대부분일 것이므로 8080포트는 거의 대부분 사용중일 것이다.

 

아래의 오류는 8080포트가 이미 사용중이니 다른 포트를 사용하던지,

사용중인 8080포트를 종료하라는 의미이다.

 

Description:

Web server failed to start. Port 8080 was already in use.

Action:

Identify and stop the process that's listening on port 8080 or configure this application to listen on another port.

 

applciation.properties에서 server.port = 원하는 포트번호(사용중이지않는)를 입력해주자.

※ ( " " )는 필요 없다.

 

저장후 다시 실행시켜보자.

 

 

요렇게 뜨면 실행 성공!

 

※ java의 버전이 16으로 설정하다 보니 java build path 문제가 발생 할 수 있습니다.

이정도 문제는 해결 할 수 있을 것 같아 따로 작성하지는 않겠습니다.

댓글로 문의사항이 생긴다면 따로 작성해보겠습니다...

728x90