728x90
Spring Boot 3.0으로 업그레이드되었다고 해서 바뀐 점이 무엇인가 알아봤습니다.
Spring Boot 3.0의 특징
- Java17, Java19를 지원
- GraaIVM기반의 Spring Native 지원
- Spring Framework 6.0기반
- Java EE를 jakarta EE로 대체(javax.*에서 jakarta.*로 변경된다.)
- HTTP / RSocket Interface Client를 제공
- Micrometer Observation API가 자동으로 구성되며, Observability지원
- HTTP API 에러 처리를 위한 RFC 7807 스펙 지원
- 보안상 이슈로 /api/hello 와 /api/hello/ 는 더 이상 일치하지 않는다.
- 사용되지 않는(Depercated) 모든 코드가 제거된다.
스프링 부트 3.0은 Java17을 기반으로 작성된 새로운 프레임워크이다.
이에 Java8을 사용하고 있으면 스프링 부트 3.0을 사용할 수 없다.
Spring Boot 3으로 마이그레이션 하는법
- Java 17로 업그레이드 하기
- Spring Boot 2.7.x로 순차적으로(2.5 -> 2.6 -> 2.7) 업그레이드 하기
- Deprecated 코드를 찾아(-Werror 옵션) 제거하기
- 레거시 application.properties 및 application.yaml 을 확인하기(use - legacy - processing)
- (옵션) AntiPathMatcher를 사용중이면 성능이 더 좋은 PathPatternParser로 변경하기
- 프로젝트에 Jakarta EE 9를 호환하는 릴리즈가 있는지 확인하기
- 프로젝트에 Spring Framework 6을 호환하는지 확인하기
- Spring Boot 3으로 마이그레이션 하기
※ 참고로 Spring Boot 2.7.x는 2023년 11월 까지 지원예정이라고 한다.
'JAVA > Spring' 카테고리의 다른 글
[Spring] Spring Batch(2) (0) | 2023.04.28 |
---|---|
[Spring] Spring Batch(1) (0) | 2023.04.26 |
[Spring] Java Spring? (0) | 2023.03.23 |
[Spring Web Flux] Project Reactor (0) | 2022.11.30 |
[Spring Web Flux] Reactive programming (0) | 2022.11.30 |