코프링에서 JPA 사용 시 주의할 점

SH·2022년 8월 31일

코틀린

목록 보기
2/2

참고: https://www.youtube.com/watch?v=Ou_-DFaAUhQ

  1. @ManyToOne과 지연로딩
    @ManyToOne에서 지연로딩을 쓰고 싶을 때
    -> 모든 클래서 및 프로퍼티에 open 키워드를 붙여주거나
    -> allOpen 플러그인을 사용해야함

사유: 지연로딩 시 프록시객체를 가져오는데 이 프록시객체는 원래 객체를 상속해서 만듦. 근데 코틀린은 상속 금지 final이 기본이라 이 기본 설정을 바꿔어주어야 지연로딩으로 프록시 객체만 가져오는게 가능


  1. @OneToMany에서 타입 주의
    코틀린에서 List, Set 이런 애들은 전부 immutable임 mutable인 MutableList 이런 친구들을 사용하거나 List<@JvmSuppressWildCards Person> 이런 식으로 어노테이션을 타입 앞에 붙여주어야 함

자바 호환성 문제가 있을 땐 바이트코드 확인하셈
profile
블로그 정리안하는 J개발자

0개의 댓글