거의 복붙이기 때문에 블로그 가서 보는걸 추천
<aside> 🤓 거의 복붙이기 때문에 블로그 가서 보는걸 추천
</aside>
영속성 관리(Persistence Context, OSIV)
하이버네이트의 OSIV 와 스프링에서의 OEIV 는 비슷하지만 차이점이 분명하게 존재한다
JDBC 커넥션 보유 시간 증가
JDBC 커넥션은 뷰의 렌더링이 모두 완료된 후에야 커넥션 풀로 반환된다
따라서 뷰의 렌더링이 길어지면 길어질수록 개별 요청을 처리하기 위한 스레드가 JDBC 커넥션을 보유하는 시간이 길어진다
모호한 트랜잭션 경계
모든 곳에서 변경이 일어날 수 있기 때문에 뷰에서 데이터를 수정하더라도 DB 까지 적용될 수도 있다
Spring 프레임워크에서는 FlushMode
와 ConnectionReleaseMode
의 조정을 통해 과거 OSIV 모델의 단점을 보완할 OpenSessionInViewFliter
와 OpenSessionInViewInterceptor
를 제공한다.