상세 컨텐츠

본문 제목

스프링부트(Spring Boot) 기본 기능 익히기

스프링부트(Spring Boot)

by 230719 2025. 1. 20. 01:08

본문

먼저, 들어가기에 앞서

스프링 부트의 라이브러리들을 설치할 것이다.

 

1. Spring Boot Devtools 설치

이 라이브러리를 설치하면 서버를 매번 재시작하지 않아도 수정한 내용이 반영된다.

developmentOnly: 개발환경에만 적용된다는 의미이다.

프로젝트에서 build.gradle 파일을 수정해준다. dependencies에 

developmentOnly 'org.springframework.boot:spring-boot-devtools'

위와같은 코드를 추가한다.

 

저장한 후, 라이브러리를 설치해야한다.

Refresh Gradle Project

build.gradle 파일을 선택한 후 마우스 우클릭을 해 Gradle - Refresh Gradle Project를 클릭하여 라이브러리를 설치한다.

 

2. 롬복(Lombok) 설치

롬복 라이브러리는 소스 코드를 작성할 때 자바 클래스에 애너테이션을 사용하여 자주 쓰는 Getter 메서드, Setter 메서드, 생성자 등을 자동으로 만들어 주는 도구이다. 

# 애너테이션: 코드에 넣는 주석, 추후에 더 자세히 알게 될 것 같다.

# Getter, Setter 메서드: 자바 클래스의 속성값을 읽거나 저장할 때 사용한다.

 

https://projectlombok.org/download

 

Download

 

projectlombok.org

이 URL 에서 롬복 플러그인을 내려받자. 

 

lombok.jar 파일이 있는 위치에서 명령어를 실행한다.

java -jar lombok.jar

위의 명령어를 실행하자.

 

그러면 다음과 같은 화면이 등장한다.

일단 OK를 눌렀다.

 

specify location을 클릭한다.

 

다음은 STS의 위치를 찾아야하는데, 

/Applications/SpringToolSuite4.app/Contents/Eclipse/SpringToolSuite4.ini

을 찾아서 open해준다.

그러면 정상적으로 IDE가 추가된다. Install / Update를 클릭하자.

 

정상적으로 설치된다.

STS를 종료한 후, 다시 시작하여 build.gradle 파일을 수정하자.

 

dependencies 에 다음과 같은 코드를 추가한다.

아래의 코드를 추가한다.

compileOnly 'org.projectlombok:lombok' 
annotationProcessor 'org.projectlombok:lombok'

저장한 후 build.gradle 파일을 우클릭해 Gradle - Refresh - Gradle Project를 클릭해 라이브러리를 설치한다.

 

 

스프링 부트 프로젝트 구조 이해하기

 

sbb 프로그램 계층도

 

src/main/java - 자바 파일을 저장하는 공간

 

com.mysite.sbb 패키지 - SBB의 자바 파일을 저장하는 공간. HelloController.java 와 같은 스프링 부트의 컨트롤러, 폼과 DTO, 데이터베이스 처리를 위한 엔터티, 서비스 등의 자바 파일이 이곳에 위치한다.

/*

컨트롤러: URL 요청을 처리

폼: 사용자의 입력 검증

DTO, 엔터티, 서비스파일: 데이터 베이스 처리를 위한 파일

*/

 

SbbApplication.java 파일 - (프로젝트명 + Application.java) 스프링 부트 애플리케이션 시작 파일.

SbbApplication.java

SbbApplication 클래스에는 반드시 @SpringBootApplication 애너테이션이 적용되어있어야 한다.

이 애너테이션을 통해 스프링부트 애플리케이션을 시작할 수 있다.

 

src/main/resources 디렉터리 - 자바 파일을 제외한 HTML, CSS, 자바스크립트, 환경 파일 등을 저장

// 환경 파일이란? 프로젝트의 설정 정보를 저장하는 파일.

 

templates 디렉터리 - src/main/resources 디렉터리의 하위 디렉터리인 templates에는 템플릿 파일을 저장한다.

템플릿 파일은 자바 코드를 삽입할 수 있는 HTML 형식의 파일로, 스프링 부트에서 생성한 자바 객체를 HTML 형태로 출력할 수 있다. templates에는 SBB 게시판 서비스에 필요한 '질문 목록', '질문 상세' 등의 웹 페이지를 구성하는 HTML 파일을 저장한다.

 

static 디렉터리 - sbb 프로젝트의 스타일시트, 자바스크립트 그리고 이미지 파일등을 저장한다.

 

application.properties 파일 - sbb 프로젝트의 환경을 설정한다. sbb 프로젝트의 환경 변수, 데이터베이스 등의 설정을 저장한다.

 

src/test/java 디렉터리 - sbb 프로젝트에서 작성한 파일을 테스트하는 코드를 저장하는 공간. JUnit과 스프링 부트의 테스트 도구를 사용하여 서버를 실행하지 않은 상태에서 src/main/java 디렉터리에 작성한 코드를 테스트할 수 있다.

// JUnit: 테스트코드를 작성하고, 작성한 테스트 코드를 실행할 때 사용하는 자바의 테스트 프레임워크이다.

 

build.gradle - Gradle이 사용하는 환경 파일이다. 그레이들은 그루비(Groovy)를 기반으로 한 빌드 도구로 Ant, Maven과 같은 이전 세대의 단점을 보완하고 장점을 취합하여 만들었다. build.gradle 파일에는 프로젝트에 필요한 플러그인과 라이브러리를 설치하기 위한 내용을 작성한다.

/*

그루비: 그레이들 빌드 스크립트를 작성하는 데 사용하는 스크립트 언어

빌드 도구: 소스 코드를 컴파일하고 필요한 라이브러리를 내려받을 때 사용한다. SBB 프로젝트를 완성하면 단 한개의 jar파일로 패키징하여 서버에 배포할 수 있는데 이때에도 빌드 도구를 사용한다.

*/

관련글 더보기