`

spring解决懒加载的过滤器在web.xml中的配置注意事项

阅读更多

做JavaWEB 开发的朋友都知道,例如在做Spring+hibernate+struts2的集成时要在web.xml中配置初始化容器对象的监听器。在做项目的时候只要就关联关系,你会遇到懒加载的问题,这个时候我们用spring统一对懒加载问题进行处理。我们可以借用spring的处理懒加载的过滤器(OpenSessionInViewFilter)配置在web.xml中,配置如下所示:

 

	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">


	<!-- 配置Spring的用于初始化容器对象的监听器 -->
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath:applicationContext*.xml</param-value>
	</context-param>

	<!-- 配置Spring的用于解决懒加载问题的过滤器 -->
	<filter>
		<filter-name>OpenSessionInViewFilter</filter-name>
		<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>OpenSessionInViewFilter</filter-name>
		<url-pattern>*.action</url-pattern>
	</filter-mapping>

	<!-- 配置Struts2的核心的过滤器 -->
	<filter>
		<filter-name>struts2</filter-name>
		<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
</web-app>
 注意:处理懒加载的过滤器一定要将配置紧跟在spring初始化容器对象的后面,不要放在struts2过滤器的后面,不然没有任何作用。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics