인프런 커뮤니티 질문&답변

김재준님의 프로필 이미지

작성한 질문수

자바 ORM 표준 JPA 프로그래밍 - 기본편

Hello JPA - 애플리케이션 개발

EntityManager 는 왜 AutoCloseable 을 지원하지 않나요?

작성

·

268

0

안녕하세요

문득 궁금한점이 생겨서 질문해봅니다.

항상 사용하고 버려야 한다면 AutoCloseable

지원하여 try-with-resource 문을 사용할 수 있도록 도움을 주면 좋을 것 같다고 생각이 들었지만

시용해볼려고 하니 지원하지 않고있습니다.

이에 따른 이유가 혹시 있는지 궁금해서 질문해봅니당.!

답변 2

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 재준님

실제 EntityManager를 사용해보면 생성하는 시점과, 종료하는 시점이 딱 일치하지는 않을 수 있습니다.

감사합니다.

0

EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("default");
try(EntityManager entityManager = entityManagerFactory.createEntityManager()){
            ...
}

https://mvnrepository.com/artifact/jakarta.persistence/jakarta.persistence-api/3.1.0

jakarta.persistence-api 3.x 버전에는 EntityManager가 AutoCloseable을 지원하고 있습니다.
참고하시면 좋을꺼 같아서 올립니다.
감사합니다.

https://deeds-not-words.tistory.com/entry/JPA-EntityManager-AutoClosable-%EA%B5%AC%ED%98%84-%EA%B4%80%EB%A0%A8