J2SE 환경에서 JPA 사용시, 개발자가 직접 Entity Manager를 생성하고, 트랜잭션도 관리해야 합니다. 하지만 Spring or J2EE 컨테이너 환경에서 JPA를 사용할 때는 이 컨테이너가 제공하는 전략을 따라야 합니다.
OSIV - hibernate부터 사용하던 용어인데, JPA로 넘어오면서 Open EntityManager In View라고 하는 것이 맞을 것 같지만, 편의상 OSIV라고 합니다. - 이 세션이라는 것은, 데이터베이스 커넥션을 의미하는데요. - 쉽게 말해 OSIV는 View로 응답을 줄 때까지 커넥션을 유지하고 있을까? 의 의미입니다. - 화면이라면, 화면에 모두 데이터가 렌더링 될 때까지, API라면 완전한 데이터 응답을 줄 때까지 세션을 유지시킬 지의 의미가 됩..........
원문 링크 : [JPA] Spring OSIV