在web.xml中配置openSessionInView的使用

<!--
  应用中使用了OpenSessionInViewFilter或者OpenSessionInViewInterceptor,所有打开的session会被保存在一个线程变量里
  这主要是为了实现Hibernate的延迟加载功能
  采用了spring的声明式事务模式,它会对你的被代理对象的每一个方法进行事务包装(AOP的方式)
  -->
 <filter>
  <filter-name>openSessionInView</filter-name>
  <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
  <init-param>
   <!--
    它会在spring的web应用的上下文根中查找Session工厂
    它也支持通过在web.xml中定义的“SessionFactoryBeanName”的init-param元素 指定的Session工厂对应的bean的名字来查找session工厂
    默认的bean的名字是"sessionFactory".他通过每一次请求查找一次SessionFactory的方式来避免由初始化顺序引起的问题
    (当使用ContextLoaderServlet来集成spring的时候 ,spring 的应用上下文是在这个filter 之后才被初始化的)。
    -->
   <param-name>sessionFactoryBeanName</param-name>
   <param-value>sessionFactory</param-value>
  </init-param>
  <init-param>
   <param-name>singleSession</param-name>
   <param-value>true</param-value>
  </init-param>
  <init-param>
   <param-name>flushMode</param-name>
   <param-value>AUTO</param-value>
  </init-param>
 </filter>
 <filter-mapping>
  <filter-name>openSessionInView</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>

你可能感兴趣的:(在web.xml中配置openSessionInView的使用)