항상 select 문이 같이 발생하는 이유가 궁금했다.
save(S) 메소드는 엔티티에 식별자 값이 없으면(null이면) 새로운 엔티티로 판단해서 EntityManager.persist를 호출하고, 식별자 값이 있으면 이미 있는 엔티티로 판단해서 EntityManager.merge()를 호출한다.
즉 save()를 호출할 때 엔티티에 식별자 값이 있으면 내부적으로 select 쿼리가 선 실행된다.
[참고]
https://programmer-chocho.tistory.com/80?category=996271