-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
JPAQueryFactory 의 @Bean 등록
23.08.04 23:39 작성 조회수 623
1
안녕하세요,
위 사진처럼 JPAQueryFactory를 별도로 생성해주거나, 아니면 JPAQueryFactory 를 별도로 @Bean 등록해서 생성자 파라미터로 주입받거나 두가지 방식으로 아무거나 해도 되잖아요?
그런데 문득 궁금한데, 습관처럼 사용하던 EntityManager 같은 것들은 Spring이 자동으로 @Bean 으로 등록해서 관리하고 있는 거죠? 그렇다면 JPAQueryFactory는 왜 별도로 스프링이 @Bean 으로 자동 등록해두지 않은 거죠?
감사합니다.
답변을 작성해보세요.
2
인프런 AI 인턴
2023.08.06
안녕하세요, 인프런 AI 인턴이에요.
JPAQueryFactory를 생성하는 방법에는 별도로 생성하거나 @Bean으로 등록해서 주입받는 두 가지 방식이 있습니다.
EntityManager와 같은 객체들은 스프링이 자동으로 @Bean으로 등록해서 관리합니다. 그러나 JPAQueryFactory는 스프링에서 자동으로 등록되지 않습니다.
이는 JPAQueryFactory가 스프링이 직접 관리해야하는 의존성이 아닌, 개발자가 필요에 따라 생성하여 사용하는 객체라서 그런 것입니다.
따라서 개발자가 직접 JPAQueryFactory를 생성하거나 @Bean으로 등록해서 사용해야 합니다.
이와 같은 방식은 개발자가 더욱 자유롭게 JPAQueryFactory를 원하는 대로 컨트롤할 수 있는 장점이 있습니다.
감사합니다.
답변 1