Підключення Hibernate до Spring аплікації через Open Session in View

Для того щоб в аплікації працювало ліниве завантаження (lazy loading) у Hibernate необхідно налаштувати шаблон Open Session in View. Для цього потрібно добавити наступний код до web.xml:


 <web-app>  
   
 <context-param>  
 <param-name>contextConfigLocation</param-name>  
 <param-value>  
 classpath:/com/applicationContext-hibernate.xml,  
 classpath:/com/applicationContext.xml  
 </param-value>  
 </context-param>  
   
 <!-- Spring Open Session In View фільтр -->  
 <filter>  
 <filter-name>hibernateFilter</filter-name>  
 <filter-class>  
 org.springframework.orm.hibernate.support.OpenSessionInViewFilter  
 </filter-class>  
 </filter>  
   
 <!-- Мапування фільтра на URL -->  
 <filter-mapping>  
 <filter-name>hibernateFilter</filter-name>  
 <url-pattern>/app/*</url-pattern>  
 </filter-mapping>  
   
 <!-- Загрузчик Spring -->  
 <listener>  
 <listener-class>  
 org.springframework.web.context.ContextLoaderListener  
 </listener-class>  
 </listener>  
 </web-app>


При такій конфігурації Hibernate сесія буде відкриватись при початку запиту та закриватись при завершенні його обробки.
  • +2
  • 13 травня 2009, 18:06
  • mux

Коментарі (0)

RSS згорнути / розгорнути

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.