Spring Boot 및 STS5 개발 환경 구축

박지명·2026년 5월 6일

스프링부트

목록 보기
1/10

1. Spring Boot 기본 개념 및 동작 방식

  • Spring Boot 목적: 기존 Spring 환경의 복잡한 초기 설정(XML 빈 등록 등)을 자동화하여 개발 편의성 극대화

  • 내장 톰캣 (Embedded Tomcat): 별도의 웹 서버(Tomcat) 설정 및 연동 과정 없이, 프로그램 내부에 톰캣이 내장되어 독립적인 자바 프로그램처럼 구동

  • Spring Initializr: 프로젝트의 기본 골격과 의존성(Dependencies)을 자동으로 구성해 주는 초기화 도구

2. 프로젝트 폴더 구조 변화 (Spring Legacy 대비)

기존 webapp 기반 구조에서 src/main/resources 중심으로 대폭 축소 및 변경

  • src/main/java

    • 자바 소스 코드 저장 폴더

    • 루트 패키지에 메인 클래스(OOOApplication.java) 위치

    • 클래스 상단의 @SpringBootApplication 어노테이션이 기존 컴포넌트 스캔 역할을 자동 수행

  • src/main/resources/templates

    • 기존 views 폴더 역할

    • JSP 대신 Thymeleaf 등의 최신 템플릿 엔진 뷰 파일 보관

  • src/main/resources/static

    • 기존 webapp/resources 역할

    • 정적 자원(HTML, CSS, JavaScript, 이미지 등) 보관

  • application.properties (또는 .yml)

    • 기존 web.xml + root-context.xml + servlet-context.xml을 모두 통합한 단일 환경 설정 파일
  • build.gradle

    • Maven의 pom.xml을 대체하는 Gradle 빌드 및 의존성 관리 설정 파일
  • src/test/java

    • JUnit 5 기반의 단위 테스트 코드 보관 폴더

3. Spring Boot에서의 JSP 사용

  • 기본 지원 제외: 톰캣에 대한 의존성을 낮추기 위해 스프링 부트는 더 이상 JSP를 기본 뷰 템플릿으로 제공하지 않음 (Thymeleaf 사용 권장)

  • JSP 연동 방법: 굳이 JSP를 사용해야 할 경우, 내장 톰캣이 JSP를 해석할 수 있도록 build.gradle에 별도의 의존성을 추가하고 application.properties에 뷰 리졸버 설정 필요

4. DB 및 MyBatis 설정 (application.properties)

복잡했던 DataSource, SqlSessionFactory XML 빈 등록 과정을 application.properties 파일 내 속성 정의로 대체

  • HikariCP 자동 구축: 접속 URL과 계정 정보만 입력하면 기본 DBCP인 HikariCP가 자동 구축
Properties
spring.application.name=mybatis

# JDBC 설정 (HikariCP 자동 세팅)
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
spring.datasource.url=jdbc:oracle:thin:@localhost:1521/XEPDB1
spring.datasource.username=아이디
spring.datasource.password=비밀번호

5. MyBatis DAO 및 Mapper 적용

  • SqlSessionTemplate 활용: 레거시 환경과 동일하게 @RequiredArgsConstructor를 활용하여 템플릿을 주입받아 쿼리 실행
Java
@Repository
@RequiredArgsConstructor
public class AddressDao {
    private final SqlSessionTemplate template;

    public int count() {
        return template.selectOne("address.count");
    }
}
  • Mapper XML 유지: mybatis-config.xml 및 Mapper XML 파일(예: address.xml)의 구조는 기존 스프링 환경과 동일하게 유지 및 사용 가능

0개의 댓글