JAVA/Spring

[Spring] Spring Boot 3.0

코딩공대 2023. 3. 26. 21:02
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으로 마이그레이션 하는법

  1. Java 17로 업그레이드 하기

  2. Spring Boot 2.7.x로 순차적으로(2.5 -> 2.6 -> 2.7) 업그레이드 하기

  3. Deprecated 코드를 찾아(-Werror 옵션) 제거하기

  4. 레거시 application.properties 및 application.yaml 을 확인하기(use - legacy - processing)

  5. (옵션) AntiPathMatcher를 사용중이면 성능이 더 좋은 PathPatternParser로 변경하기

  6. 프로젝트에 Jakarta EE 9를 호환하는 릴리즈가 있는지 확인하기

  7. 프로젝트에 Spring Framework 6을 호환하는지 확인하기

  8. 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