getById()
-
JPA getById() 와 findById()의 차이Spring 2022. 1. 12. 22:33
jpa에서 ID를 이용하여 객체를 가져오는 방법에는 getById(), findById() 두가지 방법이 존재한다. getById() public void get_activity_with_id(Integer id) { //given //when Activity activity = repo.getById(id); //then } getById()는 원래 메소드인 getOne()이 deprecated되어 대체된 메소드로 내부적으로 EntityManager.getReference() 메소드를 호출하여 엔티티가 아닌 프록시를 반환한다. 이 때문에 실제로 사용하기 전에는 데이터 베이스에 접근하지 않고 실제로 사용될 때 프록시에서 데이터 베이스에 접근하려고 할때 데이터가 존재하지 않는다면 EntityNotFound..