버전 업그레이드 해야 한다는 말 덕분에 해본 프로젝트 마이그레이션
JDK 17 이상 (11 → 17)
SpringBoot 3.2.5는 Java 17 이상을 요구합니다.
따라서 프로젝트에서 사용 중인 JDK 버전을 확인 후 업그레이드 해야 합니다.
/* file : build.gradle */
sourceCompatibility = '17'
Springframework 버전 맞추기
SpringBoot 버전을 2.7.9에서 3.2.5로 업그레이드
spring.dependency-management 1.0.15.RELEASE에서 1.1.4로 업그레이드했습니다.
/* file : build.gradle */
plugins {
id 'java'
id 'org.springframework.boot' version '3.2.5'
id 'io.spring.dependency-management' version '1.1.4'
}
dependency-management는 종속성 관리를 해주는 gradle 플러그인이라고 합니다!
SpringCloudVersion
클라우드 버전을 2021.0.4 → 2023.0.1로 바꿨습니다.
/* file : build.gradle */
ext {
set('springCloudVersion', "2023.0.1")
}
버전 확인 방법은 https://spring.io/projects/spring-cloud#overview 접속 후 아래로 내리다 보면
이렇게 확인하실 수 있습니다
mybatis
mybatis 버전도 함께 2.3.0 -> 3.0.3로 올려줬습니다
/* file : build.gradle */
implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:3.0.3'
javax → jakarta
Jakarta EE 9로의 전환 (이로 인해 javax 패키지가 jakarta로 변경됨)
java.util.Date → java.time.Instant
스프링부트 3.2.5에서는 java.util.Date를 사용하는 것이 권장되지 않고 java.time.Instant를 사용하는 것이 좋다고 했습니다.
redis 방식
application.yaml에서 정의한 redis 방식이 변경되었습니다.
기존
/* file : application.yaml */
spring:
redis:
이렇게 사용했다면
변경
/* file : application.yaml */
spring:
data:
redis:
spring과 redis 사이에 data가 추가되었습니다
feign
feign 방식도 변경되었습니다.
기존
/* file : application.yaml */
feign:
circuitbreaker:
enabled: true
client:
config:
default:
connectTimeout: 5000
readTimeout: 5000
변경
/* file : application.yaml */
spring:
cloud:
openfeign:
circuitbreaker:
enabled: true
client:
config:
default:
connectTimeout: 5000
readTimeout: 5000
스프링부트 3.2부터 매개변수의 이름을 인식하지 못하는 문제
Name for argument of type [java.lang.String] not specified, and parameter name information not available via reflection. Ensure that the compiler uses the '-parameters' flag.
이런 에러를 맞이할 수도 있는데 당황하시지 마시고
추가해 주시면 됩니다!
'CODING STUDY > JAVA' 카테고리의 다른 글
[Java] BooleanBuilder과 BooleanExpression (0) | 2024.09.27 |
---|---|
[Java] Spring Batch 버전 5로 업그레이드 (0) | 2024.05.30 |
[Java] association, collection을 사용하여 데이터 가져오기 (0) | 2024.04.12 |
[Java] Json 값 중 원하는 값 추출하기 (0) | 2024.03.25 |
[Java] CompletableFuture (0) | 2024.03.21 |