Spring
스프링과 스프링 부트에 대해 공부하고 기록하고자 포스팅합니다. 더보기더보기더보기더보기더보기더보기더보기더보기 …
비교표
| 항목 | Spring Framework | Spring Boot |
|---|---|---|
| 설정 파일 | XML, Java Config 수동 작성 | application.properties로 간단 설정 |
| 의존성 | 개별 라이브러리 직접 관리 | starter로 묶음 관리 |
| 서버 | 외부 WAS 필요 (Tomcat 등) | 내장 서버 포함 |
| 배포 | WAR 파일 | JAR 파일 (실행 가능) |
| 개발 시간 | 초기 설정 오래 걸림 | 빠른 시작 |
| 학습 곡선 | 가파름 | 완만함 |
@SpringBootApplication // 이것만으로 대부분 자동
// 내부적으로 이렇게 동작:
// 1. classpath에 spring-jdbc가 있나? → DataSource 자동 생성
// 2. classpath에 spring-data-jpa가 있나? → EntityManager 자동 생성
// 3. classpath에 HikariCP가 있나? → 커넥션 풀 자동 설정
// 4. classpath에 spring-webmvc가 있나? → DispatcherServlet 자동 등록
public class Application {
}
프로젝트 구조 비교
Spring Framework 프로젝트
src/
main/
java/
resources/
webapp/
WEB-INF/
web.xml ← 서블릿 설정
applicationContext.xml ← Spring 설정
dispatcher-servlet.xml ← MVC 설정
views/
Spring Boot 프로젝트
src/
main/
java/
Application.java ← 메인 실행 파일
resources/
application.properties ← 모든 설정이 여기