`
7tianle
  • 浏览: 95171 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用struts2时注意内存泄漏

阅读更多
以前的项目用的是struts1,运行得好好的,现在改用struts2后,发现运行不到一天tomcat就出现内存溢出的错误。使用jProfiler分析一下,发现tomcat启动后使用的内存就一路飙升,而且放在action里面的类根本没有释放掉,应该是struts出现了问题,查一下struts的配置,原来没有配ActionContextCleanUp,在web.xml中加入
<filter>
  <filter-name>struts-cleanup</filter-name>
  <filter-class>
   org.apache.struts2.dispatcher.ActionContextCleanUp
  </filter-class>
</filter>
<filter-mapping>
  <filter-name>struts-cleanup</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>
再次用jprofiler进行分析,果然好了。
分享到:
评论
1 楼 lucy12 2016-04-29  
http://www.ulequ.com/lengxiaohua/
http://www.ulequ.com/lengxiaohua/16335.html
http://www.ulequ.com/lengxiaohua/16334.html
http://www.yulet.com/chengrenxiaohua/13374.html
http://www.yulet.com/quanwen/13382.html

相关推荐

    Struts2中POI在内存中生成Excel文件并下载

    Struts2是一个流行的Java web框架,它用于构建和维护可扩展且易于管理的企业级应用程序。...在实际开发中,还应注意错误处理、资源关闭(如关闭Workbook和OutputStream)等最佳实践,以避免内存泄漏和其他问题。

    Struts2+Hibernate开发环境搭建

    1. 避免内存泄漏:在使用完Session后记得关闭。 2. 数据库连接池:使用连接池如C3P0或HikariCP提高性能。 3. 错误处理:对可能出现的异常进行捕获和处理。 4. 性能优化:合理使用缓存,避免过多的数据库查询。 通过...

    Struts2实现文件上传

    Struts2是一个非常流行的Java Web框架,用于构建可维护、可扩展且结构良好的企业级应用程序。文件上传功能在Web应用中十分常见,例如用户需要上传个人照片、文档等。Struts2提供了内置的支持来处理文件上传请求,...

    struts2+jxl导出excel

    Struts2是一个流行的Java web开发框架,它提供了一种组织和控制MVC(模型-视图-控制器)应用程序的方式。而JXL库则是一个用于读写Microsoft Excel文件的Java库,使得开发者能够在Java程序中方便地操作Excel数据。在...

    struts2增删改查

    4. Connection、Statement、ResultSet管理:正确关闭数据库资源,避免内存泄漏。 三、Struts2与Oracle集成 1. 数据源配置:在Web应用的配置文件(如web.xml)中配置Oracle的数据源,提供数据库连接池。 2. DAO...

    struts2整合apache的jxl导入导出excel表格

    Struts2 框架与 Apache 的 JXL 库整合,可以方便地实现在 Java Web 应用中导入和导出 Excel 表格的功能。Apache JXL 是一个强大的 Java 库,专门用于读写 Microsoft Excel 文件,使得开发者无需依赖 Office API 就能...

    struts2+jdbc

    记得在完成后关闭所有的资源,防止内存泄漏。 3. **编写SQL语句**:根据业务需求,编写SQL语句来查询、添加、修改或删除数据。预编译的PreparedStatement可以防止SQL注入攻击,提高安全性。 4. **执行SQL并处理...

    struts2实现文件下载及中文名字转换解决方案

    在本文中,我们将深入探讨如何使用Struts2框架实现文件下载功能,尤其是处理包含中文名字的附件。Struts2是一个流行的Java Web开发框架,它提供了丰富的功能,包括处理HTTP请求、表单提交以及数据绑定等。对于文件...

    spring struts2整合

    - **添加Spring支持**:在Struts2的配置中,引入Spring插件,如`&lt;constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" /&gt;`,这将使Struts2使用Spring来创建Action...

    Struts2+Spring4+Hibernate4整合

    然而,整合过程需要注意性能优化,如合理使用缓存,避免内存泄漏,以及正确处理事务边界等。同时,随着Spring Boot的流行,现在更多项目倾向于采用Spring Boot进行快速开发,因为Spring Boot内置了许多默认配置,能...

    struts-2.3.32所需jar包

    通常,每个新版本都会修复前一版本中发现的任何问题,包括性能瓶颈、内存泄漏或兼容性问题。因此,保持框架的最新状态对于任何使用Struts 2的开发者来说都是至关重要的。 在部署Struts 2.3.32之前,开发者应该仔细...

    Struts2配置文件详解

    - **功能**: 指定Struts2使用的对象工厂,默认为`spring`。 - **示例**: 如果想要使用Spring作为对象工厂,保持默认即可。 - **扩展**: 当选择`spring`作为对象工厂时,还可以进一步配置与Spring集成相关的属性。...

    Struts 2.X权威指南 第20章

    10. **最佳实践与性能优化**:本章可能涵盖Struts 2应用的性能调优技巧,如减少不必要的拦截器、缓存策略、避免内存泄漏等。 以上内容是基于标题和标签的推测,实际章节内容可能包含但不限于这些知识点。对于学习...

    struts2上传文件、生成缩略图、添加文字和图片水印

    生成缩略图和添加水印时,也需防止内存溢出或资源泄露,确保图片处理过程的安全性。 以上就是关于"Struts2上传文件、生成缩略图、添加文字和图片水印"的主要知识点,理解并掌握这些技术可以帮助开发者实现高效、...

    Struts2整合Spring、JPA

    - 避免内存泄漏:确保在Action类中使用了Spring管理的bean,避免直接new对象导致内存泄漏。 - 事务边界设置:正确配置Spring的事务边界,防止数据不一致问题。 - 性能优化:合理使用JPA的查询API,避免全表扫描和...

    使用了2年Struts开发项目后的总结

    但是,要防止内存泄漏,需要正确管理ActionForm的生命周期,特别是在大型应用中,考虑使用Session范围之外的FormBean。 Ajax技术在Struts中也发挥了重要作用,通过DWR(Direct Web Remoting)或jQuery的Ajax库,...

    java结合struts的上传下载文件

    1. **配置Struts2核心配置文件**: 在`struts.xml`中添加上传配置,声明一个`action`用于处理文件上传请求。例如: ```xml &lt;result name="success"&gt;/uploadSuccess.jsp ``` 其中`fileUploadStack`是...

    Struts2Spring3Hibernate4 SSH框架最新最全jar包

    SSH框架的集成带来了许多优势,例如代码的松耦合、良好的分层结构、方便的事务管理等,但也需要注意性能优化和安全问题,例如防止SQL注入、避免内存泄漏等。对于初学者来说,理解这三个框架的基本原理和相互作用是...

    struts2增删改查功能实现

    在这里,开发者应该注意数据库连接的管理和异常处理,确保资源得到正确关闭,以防止内存泄漏或数据库连接池耗尽。 为了实现增删改查的其他功能,我们需要添加更多方法。例如: 1. **创建(Create)**: 添加一个新...

    struts2 文件上传下载

    1. **使用Struts2的FileUpload拦截器**:Struts2内置了`FileUpload`拦截器来处理文件上传。要启用文件上传,需要在配置文件中添加`fileUpload`拦截器到默认栈或自定义栈中。 ```xml ...

Global site tag (gtag.js) - Google Analytics