본문 바로가기

SPRING

[SPRING] 프로젝트 생성

사전 준비

1. JAVA11 설치

2. IED: IntelliJ 또는 이클립스 설치 (블로그는 IntelliJ기준으로 설명)

 

<JAVA 설치법 및 이클립 설치법>

https://tengnara.tistory.com/15

 

[JAVA] 기초문법 - JAVA 설치(실행환경 구축)

자바 se8버전까지는 jre 같이 다운되기 때문에 설치에 어려움이 없습니다. ​ se8버전 이후로 부터 jre가 제공되지 않기 때문에 따로 설치해야합니다. ​ se8버전 이후라고 가정한 후 설치 방법을 소

tengnara.tistory.com

 

<IntelliJ 설치법>

https://www.jetbrains.com/ko-kr/idea/

 

IntelliJ IDEA: 우수성과 인체 공학이 담긴 JetBrains Java IDE

 

www.jetbrains.com

접속 후 Community 버전 다운

 

<스프링부트를 이용한 프로젝트 생성>

1. https://start.spring.io 접속

: 스프링부트 기반으로 스프링 관련 프로젝트를 만들어주는 사이트 (스프링에서 운영)

 

2. 환경설정

maven과 Gradle: 필요한 라이브러리를 사용할 수 있게 해주고 빌드하는 라이프사이클을 관리해주는 툴.

maven: 과거에 많이 사용.

Gradle: 요즘 많이 사용.(스프링 라이브러리도 gradle 사용, 블로그에서는 gradle로 진행)

스프링부트버전 선택(snapshot은 정식릴리즈된 버전이 아님)

그룹: 기업, 도메인명

artifact: 빌드될떄 나오는 결과물(프로젝트 명과 유사)

dependencies : 사용할 라이브러리 설정

-spring web : web프로젝트이기 때문에 필요

-thymeleaf: html을 만들어 주는 템플릿 엔진

 

3. GENERATE

GENERATE하면 알집파일이 다운로드 됨 그 후 압축해제.

인텔리j에서 알집을 푼 폴더에 들어가 "build.gradle" open

*처음인 경우 외부라이브러리를 다운받는데 시간이 오래걸림.

 

4. 프로젝트구조 설명:

.idea: 인텔리j가 사용하는 설정파일

gradle ㅡ> wrapper : gradle과 관련된 파일

src ㅡ> main : 자바와 리소스관련된 파일들 자바 밑에는 실제 소스코드와 패키지가 존재, 리소스 밑에는 자바코드 파일들 제외한 xml이나 설정파일들 html등이 들어감.

src ㅡ>test : 테스트코드와 관련된 소스파일들이 들어가는 곳(테스트코드는 정말 중요함)

build.gradle:  gradle 설정파일들(예전엔 직접 전부 입력해야 했음.) 

- dependencies : 사용하는 라이브러리 영역

- repositories : 라이브러리를 다운받는 사이트 지정

.gitignore: 소스코드파일 깃에는 필요한 소스코드만 올라가야함.(빌드된 결과물들 올라가면 안됨.) ㅡ>start.spring.io에서 해줌

gradlew/gradlew.bat: gradlew로 빌드할때 사용

 

5. 실행

src/main/java/hello.hellospring에 소스파일을 열어보면,

클래스 하나가 자동으로 만들어져 있음. java는 public class에 main 메서드에서 부터 시작함.

메인메서드를 실행하면,

를 볼수가 있음. ㅡ> http로 8080포트에 열림.

 

즉, 메인메서드 실행시 main 메서드에 SpringApplication.run이 스프링부트 어플리케이션을 실행. ㅡ> 톰캣이라는 웹서버를 내장하고 있음. 

http://localhost:8080/ 로 들어가면 에러페이지가 나오는 걸 확인 가능함. (성공한 것)

 

 

메인메서드를 실행을 하지 않으면 연결할 수 없다는 메세지가 나옴.

 

번외) setting에서 gradle 검색 ㅡ> 실행을 인텔리j로 변경 ㅡ> 인텔리j에서 gradle을 통하지않고 바로 java를 실행해서 더 빠르게 실행.

'SPRING' 카테고리의 다른 글

[SPRING] 첫페이지 만들기 및 빌드  (0) 2021.12.15
[SPRING] 스프링구조 - 의존관계  (0) 2021.12.14