본문 바로가기
백엔드/Spring Boot 이론

스프링부트 프로젝트 구성과 설정

by P_eli 2023. 11. 30.
728x90
반응형

스프링부트 프로젝트를 시작하는 초보자들을 위해, 프로젝트의 구성과 설정에 대한 상세한 설명을 드리려고 합니다.

 

1. 스프링부트 프로젝트 생성

먼저, 스프링부트 공식 웹사이트에서 제공하는 스프링 이니셜라이저를 통해 프로젝트를 생성합니다. https://start.spring.io/ 에 접속해서 프로젝트의 기본 설정을 입력하고, 필요한 의존성(Dependency)을 추가합니다.

프로젝트 설정 예시:

  • Project: Gradle 또는 Maven 선택
  • Language: Java
  • Spring Boot: 최신 버전 선택
  • Packaging: Jar 또는 War 선택
  • Dependencies: Spring Web, Thymeleaf(뷰 템플릿 엔진), Spring Data JPA 등 선택

2. 프로젝트 구조 살펴보기

프로젝트를 다운로드 받고 압축을 해제하면, 기본적인 스프링부트 프로젝트 구조가 나타납니다. 주요 디렉토리 및 파일은 다음과 같습니다.

  • src/main/java: 자바 코드가 위치하는 디렉토리
  • src/main/resources: 설정 파일 및 정적 리소스 파일이 위치하는 디렉토리
  • src/test: 테스트 코드가 위치하는 디렉토리
  • pom.xml(또는 build.gradle): Maven 또는 Gradle 설정 파일

3. application.properties/application.yml 설정

src/main/resources 디렉토리에 있는 application.properties 또는 application.yml 파일은 스프링부트 애플리케이션의 기본 설정을 담당합니다. 데이터베이스 연결 정보, 포트 설정, 로깅 등을 여기서 조정할 수 있습니다.

예시 application.properties

# 서버 포트 설정
server.port=8080

# 데이터베이스 연결 정보
spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase
spring.datasource.username=root
spring.datasource.password=secret

# 로깅 설정
logging.level.org.springframework=INFO

 

4. 컨트롤러 및 서비스 생성

src/main/java 디렉토리에 패키지를 생성하고, 컨트롤러 및 서비스 클래스를 만듭니다. 컨트롤러는 클라이언트의 요청을 받아 서비스에 전달하고, 서비스는 실제 비즈니스 로직을 처리합니다.

예시 컨트롤러

@RestController
@RequestMapping("/api")
public class MyController {
    
    @Autowired
    private MyService myService;

    @GetMapping("/hello")
    public String getHelloMessage() {
        return myService.generateHelloMessage();
    }
}

 

예시 서비스

@Service
public class MyService {
    
    public String generateHelloMessage() {
        return "Hello, Spring Boot!";
    }
}

 

5. 애플리케이션 실행

이제 모든 설정과 코드가 준비되었습니다. IDE에서 프로젝트를 열고, 메인 애플리케이션 클래스를 찾아 실행하거나 터미널에서 ./gradlew bootRun 또는 ./mvnw spring-boot:run 명령을 사용하여 애플리케이션을 실행할 수 있습니다.

 

브라우저에서 http://localhost:8080/api/hello로 접속하여 결과를 확인해보세요!

728x90
반응형