OSIV

    OSIV (Open Session In View) 란?

    면접 때 질문 받은 키워드인데 처음 들어보는 개념이어서 공부하고 정리해보았다. OSIV - 세션의 시작은 서블릿이 시작되는 시점 부터 (세션은 영속성 컨텍스트를 포함) - 트랜잭션의 시작은 서비스 레이어부터, JDBC 커넥션도 이 시점부터. - 트랜잭션의 종료는 서비스 계층에서 종료, JDBC 커넥션도 이 시점 부터 종료. - 세션은 컨트롤러 영역까지 끌고 가기 때문에 영속성이 보장되어 select가 가능해지고 lazy-loading이 가능해진다. OSIV는 이렇게 presentation layer까지 세션을 유지하는 것을 뜻한다. View에서 프록시 객체에 대한 정보가 필요할 때 JDBC 커넥션을 열어서 받아올 수 있다. 다만 트랜잭션은 이미 종료된 상태이기 때문에 정보 변경은 불가능하다. 설정방법 y..