`

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过滤器的后面,不然没有任何作用。

 

分享到:
评论

相关推荐

    懒加载异常解决.docx

    通过配置OpenSessionInViewFilter,可以在很大程度上解决懒加载异常的问题,尤其是在Java Web应用中使用Hibernate等ORM框架时。当然,还需要根据实际项目的具体情况,灵活调整和优化配置,以达到最佳的性能和稳定性...

    SpringMVC+Spring+ mybatis 框架 简单配置

    以上就是SpringMVC、Spring和MyBatis整合时`web.xml`的基本配置和注意事项。通过合理的配置,这三个框架可以无缝协作,提供强大的后端支持。在实际项目中,还可能需要根据具体需求进行额外的调整和优化,例如添加...

    Spring中文帮助文档

    在应用服务器中使用Hibernate的注意事项 12.3. JDO 12.3.1. 建立PersistenceManagerFactory 12.3.2. JdoTemplate和JdoDaoSupport 12.3.3. 基于原生的JDO API实现DAO 12.3.4. 事务管理 12.3.5. JdoDialect ...

    struts+spring+hibernate整合配置笔记

    Struts、Spring和Hibernate是Java开发中非常流行的三大框架,它们各自在Web应用程序的不同层面上发挥作用,共同构建出高效、可维护的系统。Struts主要负责控制层,Spring提供了全面的依赖注入(DI)和面向切面编程...

    过滤器(Filter)

    当用户向服务器发送一个请求时,过滤器会按照在web.xml中的配置顺序被调用。每个过滤器都可以对请求和响应进行预处理和后处理。如果过滤器选择允许请求通过,它会调用下一个过滤器,直到请求到达目标资源(如Servlet...

    Spring API

    在应用服务器中使用Hibernate的注意事项 12.3. JDO 12.3.1. 建立PersistenceManagerFactory 12.3.2. JdoTemplate和JdoDaoSupport 12.3.3. 基于原生的JDO API实现DAO 12.3.4. 事务管理 12.3.5. JdoDialect ...

    SSM(Spring+SpringMVC+Mybaits)整合步骤

    1. web.xml:Web应用的部署描述符,主要配置Spring的ContextLoaderListener监听器,加载主配置文件bean.xml,以及Spring MVC的核心DispatcherServlet,配置其初始化参数和映射路径。此外,还可能包含过滤器配置,如...

    如何在Spring中解决中文乱码的方法.doc

    - 确保过滤器配置在其他过滤器之前加载,以保证其能正确处理字符编码。 - 如果使用了Struts框架,需要确保Struts的配置文件(如`struts-config.xml`)中也正确地设置了字符集,以避免不一致的问题。 #### 数据库端...

    struts2+ibatis+spring完全整合

    在`web.xml`中,`ContextLoaderListener`监听器用于启动Spring应用上下文,并加载`applicationContext.xml`配置文件。`struts2`过滤器的配置使得Struts2能与Spring集成,通过`struts.objectFactory.spring.autoWire`...

    struts2 spring hibernate整合要点、注意点

    `web.xml` 是Web应用的部署描述符,其中定义了应用的基本配置信息,包括监听器、过滤器等。下面是一个示例: ```xml &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;web-app version="2.5" xmlns=...

    Struts2+Spring3+Hibernate3_集成方法

    #### 1.2 在web.xml中配置Struts的过滤器 配置Struts2的过滤器是其启动的关键步骤之一,通过过滤器,Struts2可以拦截所有的请求并进行相应的处理。在web.xml中添加如下配置: ```xml &lt;filter-name&gt;struts2 ...

    struts2+ibatis+spring整合开发.doc

    在`web.xml`中,通过`ContextLoaderListener`监听器加载`contextConfigLocation`指定的应用上下文配置文件(`applicationContext.xml`),进行Spring容器的初始化。在这里,Spring可以用来管理Bean的生命周期,包括...

    struts2.1+spring3.0+hibernate3.3整合

    - 在`web.xml`中配置Spring监听器(`ContextLoaderListener`),以便在启动时加载Spring的配置文件。 - 配置文件(如`applicationContext.xml`)通常放置在`WEB-INF`目录下,用于定义Spring管理的bean。 3. **...

    ssh整合步骤

    2. 在`web.xml`配置文件中,添加Struts2的过滤器配置,以拦截所有`.action`请求,确保Struts2能够处理HTTP请求。配置如下: ```xml &lt;filter-name&gt;struts2 &lt;filter-class&gt;org.apache.struts2.dispatcher.ng....

    Flex4.1集成spring代码

    这是任何Web应用的基础配置文件,用于声明和初始化应用中的监听器、过滤器、Servlet等组件。具体到Flex与Spring的集成,关键在于: - **Spring监听器的注册**:通过`&lt;listener&gt;`标签引入`org.springframework.web....

    Spring Security 中文教程.pdf

    - **配置LDAP服务器**:配置步骤及注意事项。 - **实现类**:具体的实现类如LdapAuthenticator、LdapUserSearch等。 #### 八、其他相关主题 - **JSP标签库**:提供了一系列JSP标签用于安全性相关的操作。 - **...

    java开发技术文档

    `web.xml`中包含了项目的关键配置信息,如过滤器(filter)、监听器(listener)以及上下文参数(context-param)等。 - **`context-param`**:此部分用于配置Spring的上下文环境。通过`contextConfigLocation`参数来...

    struts2+hibernate+spring整合

    在`web.xml`文件中,我们需要配置一个Spring的上下文监听器`ContextLoaderListener`,它会在Web应用启动时加载配置文件(例如`/WEB-INF/applicationContext.xml`)。这样,Spring就能管理我们的Bean,包括Struts2的...

    ssh配置总结

    为了避免字符集问题,还可以在`web.xml`中配置`CharacterEncodingFilter`过滤器,强制所有HTTP请求使用UTF-8编码: ```xml &lt;filter-name&gt;characterEncoding &lt;filter-class&gt;org.springframework.web.filter....

    项目打包成War(Spring Boot).pdf

    2. **Servlet 3.0的支持**:自Servlet 3.0起,可以通过注解定义Servlet和过滤器,无需在`web.xml`中进行配置。这要求Tomcat版本至少为7.0以上。 3. **POM文件配置**:在`pom.xml`中设置项目的打包类型为`war`,并...

Global site tag (gtag.js) - Google Analytics