development

Spring Boot의 spring.jpa.open-in-view = true 속성은 무엇입니까?

big-blog 2020. 10. 13. 08:05
반응형

Spring Boot의 spring.jpa.open-in-view = true 속성은 무엇입니까?


Spring Boot 문서에서 JPA 구성에 대한이 속성을 보았습니다 spring.jpa.open-in-view=true. 덧붙여서 참으로 설정되었는데 기본값인가요?

그것은 정말로 무엇을 의미합니까? 이 동작에 대한 설명을 찾지 못했습니다.

SessionFactory대신 Hibernate를 사용해야 EntityManagerFactory합니까? 그렇다면 어떻게 설정할 수 EntityManagerFactory있습니까?

도움을 주셔서 감사합니다.

감사!


이 속성은 현재 스레드에 OpenEntityManagerInViewInterceptor를 등록하는를 등록 EntityManager하므로 EntityManager웹 요청이 완료 될 때까지 동일하게 유지됩니다. Hibernate SessionFactory등과 는 관련이 없습니다 .


불행히도 OSIV (Open Session in View)는 Spring Boot에서 기본적으로 활성화되어 있으며 OSIV는 성능 및 확장 성 관점에서 볼 때 정말 나쁜 생각입니다 .

따라서 application.properties구성 파일에 다음 항목이 있는지 확인하십시오 .

spring.jpa.open-in-view=false

이렇게하면 OSIV가 비활성화 되어 올바른 방법으로 처리LazyInitializationException 할 수 있습니다 .

버전 2.0부터 OSIV 가 기본적으로 활성화 되면 Spring Boot 는 경고를 발행 하므로 프로덕션 시스템에 영향을 미치기 훨씬 전에이 문제를 발견 할 수 있습니다.

참고 URL : https://stackoverflow.com/questions/30549489/what-is-this-spring-jpa-open-in-view-true-property-in-spring-boot

반응형