JPA Proxy란?

Kyle_Kim·2022년 6월 20일
0
post-thumbnail

프록시?

  • 질문으로 부터 프록시에 대한 학습을 시작한다.
  • Member 엔티티를 조회할 때 Team도 함께 조회해야 할까?
    - 실제로 필요한 비즈니스 로직에 따라 다르다.비즈니스 로직에서 필요하지 않을 때가 있는데, 항상 Team을 함께 가져와서 사용할 필요는 없다.
    • 낭비가 발생하게 된다.JPA는 이 낭비를 하지 않기 위해, 지연로딩과 프록시라는 개념으로 해결한다.

프록시 기초

지연 로딩을 이해하려면, 프록시의 개념에 대해서 명확하게 이해해야 한다.

  • JPA에서 em.find() 말고, em.getReference()라는 메서드도 제공 된다.
  • em.find() 는 DB를 통해서 실제 엔티티 객!
    체를 조회하는 메서드이고em.getReference() 는 DB의 조회를 미루는 가짜(프록시) 엔티티 객체를 조회하는 메서드이다.

profile
Make Things Right

0개의 댓글