[new-and-noteworthy 링크]
- Hibernate 4 -> 5
- org.jadira.usertype 4.0.0.GA -> 5.0.0.GA
@ConfigurationProperties deprecated attribute
Deprecated 예정인 항목 중
The locations and merge attributes of the @ConfigurationProperties annotation have been deprecated in favor of directly configuring the Environment.
이 부분이 있다.
@ConfigurationProperties를 통해 yml설정을 사용하던 부분이 앞으로 locations 가 제거되고 나면 문제가 될 듯 하다.
[관련 링크]
@PropertySource는 yml 호출을 아직 지원하지 않고 있다.
MessageSourceAutoConfiguration classpath
그동안 몰랐었는데 Spring Boot MessageSourceAutoConfiguration가 변경된 부분이 있다. [관련 링크]1.3.2, 1.2.9 이전의 경우
private Resource[] getResources(ClassLoader classLoader, String name) {
try {
return new SkipPatternPathMatchingResourcePatternResolver(classLoader).getResources("classpath*:" + name + "*.properties");
}
catch (Exception ex) {
return NO_RESOURCES;
}
}
1.3.2, 1.2.0 이후
private Resource[] getResources(ClassLoader classLoader, String name) {
try {
return new PathMatchingResourcePatternResolver(classLoader).getResources("classpath*:" + name + ".properties");
}
catch (Exception ex) {
return NO_RESOURCES;
}
}
어차피 i18n 적용을 하면 이 변경은 의미가 없는 것 같고 오히려 한 개라도 일치하는 messageSource properties가 없으면 전체 i18n properties를 다 로드하지 않는 문제가 있다.
Hibernate @GeneratedValue
Hibernate 가 4에서 5로 변경되면서 기존 @GeneratedValue의 사용에 오류가 발생한다.기본 strategy인 GenerationType.AUTO가 5에서 제대로 동작하지 않기 때문에 명시적으로 선언이 필요하다.
@GeneratedValue(strategy = GenerationType.IDENTITY)
Thymeleaf3
Thymeleaf 3을 쓰는 경우 thymeleaf-extras-java8time 2.1.0.RELEASE -> 3.0.0.RELEASE로 변경해서 사용해야 한다.템플릿 엔진이 변경되면서 주석처리에 문제가 있던 부분도 해결이 되었다.
따라서 thymeleaf-extras-conditionalcomments 라이브러리는 제거해야 한다.
@ConfigurationProperties locations 제거 이슈는 https://github.com/spring-projects/spring-boot/issues/6726 요기 참고해보시면 도움될듯합니다 :)
답글삭제