스프링 부트 4.0.4 기반으로 오랜만에 세팅하려고 하니까 옵션이 워낙 많아서 클도드를 통해서 정리해둠
Developer Tools
Spring Boot DevTools
- 코드 변경 시 자동 재시작, LiveReload(브라우저 자동 새로고침), 캐시 비활성화, 빠른 빌드 지원. runtime 스코프로만 동작해 프로덕션 빌드엔 포함 안 됨.
Lombok
- @Getter @Setter @Builder @Data @Slf4j 등 어노테이션 하나로 getter/setter/생성자/로거를 컴파일 타임에 자동 생성.
Spring Configuration Processor
- @ConfigurationProperties 클래스를 분석해 spring-configuration-metadata.json을 생성. IDE에서 application.yml 작성 시 자동완성과 타입 검증 제공.
Docker Compose Support
- Spring Boot 3.1+에서 compose.yaml을 감지해 앱 시작 시 docker compose up을 자동 실행. 앱 종료 시 자동 docker compose stop도 지원.
Spring Modulith
- 단일 Spring Boot 앱 내 패키지 경계를 모듈로 선언하고, 모듈 간 의존성 위반을 테스트로 검증. 이벤트 기반 통신, 모듈 문서 자동 생성 지원.
GraalVM Native Support
- JVM 없이 실행되는 네이티브 바이너리로 컴파일. 콜드 스타트가 수십 ms, 메모리 사용량이 JVM 대비 최대 80% 절감. 단, 빌드 시간이 수 분으로 증가하고 리플렉션 설정이 복잡.
GraphQL DGS Code Generation
- Netflix DGS 프레임워크용. GraphQL 스키마(.graphqls)에서 Java/Kotlin 타입·Data Fetcher 인터페이스를 자동 생성. GraphQL API를 type-safe하게 구현할 때 사용.
댓글
댓글 쓰기