Spring Boot/JPA
[JPA] 테이블간의 연관관계 연결 실패(feat. cannot be cast to java.io.Serializable)
발단두 테이블 간의 연결관계 설정 후 해당 테이블에 대한 조회시 발생한 오류로써 이를 해결하는 과정을 작성하였습니다. 환경Spring Boot 2.7.15Hibernate Core 5.6.15.Final 문제 환경 코드(예시) [HHH-7668] - Hibernate JIRA hibernate.atlassian.net// 링크에서 참조한 예제 테이블 코드 입니다.@Entity@Table(name = "USERS")public class User { @Id @GeneratedValue protected Long id; @NotNull @Column(unique = true) protected String customerNr;}@Entitypublic class Item { ..
[JPA] hibernate bytecode enhancement 적용시 발생하는 오류 해결 (Failed to apply plugin 'org.hibernate.orm', gradle, kotlin)
발단OneToOne 관계를 맺은 테이블에서 Lazy Initialization 을 의도하였으나 의도한 바대로 동작하지 않고 FetchType.Eager 처럼 동작하여 이를 해결하기 위해 적용한 bytecode enhancement plugin 이 찾을 수 없다는 이유로 적용되지 않는 이슈를 해결하는 과정입니다. 환경Spring Boot 3.2.5data-jpa-starterhibernate-core 6.4.4.Final OneToOne 사용시 FetchType.Lazy 가 의도대로 동작하지 않는 이유 [JPA] bytecode instrumentation 을 이용한 lazy loading 활성화-10. @OneToOne 의 양방향 연관 관계 다대일, 일대다, 다대다 와는 다르게 @OneToOne 매핑은 ..
[JPA] 연관관계를 맺은 객체에 대해 지연 로딩이 동작하지 않는다면(feat. kotlin, hibernate, lazy-loading)
발단 스케줄러 작업을 통해 주기적으로 DB 요청을 하는 상황에서 로그를 살펴보니 원하지 않았던 정보까지 요청하고 있어 어떻게 해결하게 되었는지 공유하고자 합니다. 환경 Spring Boot > 3.0 Kotlin Kotlin 의 final 정책 이해를 돕기 위해 간단히 Kotlin 의 정책에 대해 얘기해보고자 합니다. Effective Java, "Item 17: Design and document for inheritance or else prohibit it" `Effective Java` 2001 연도에 출판한 책으로 Java 의 효율적인 사용과 좋지만 흔히 사용되지 않은 개발패턴에 대해 언급한 저명한 서적입니다. 해당 책에서 `상속을 위해 디자인과 문서화 하지 않을거면 지양해라` 라는 챕터를 다룬..