Spring 菜鸟教程 IntrospectorCleanupListener
缓冲泄露
spring中提供了一个名为org.springframework.web.util.IntrospectorCleanupListener的监听器。它主要负责处理由JavaBeans Introspector的使用而引起的缓冲泄露。
描述
它是一个在web应用关闭的时候,清除JavaBeans Introspector的监听器.在web.xml中注册这个listener.可以保证在web 应用关闭的时候释放与掉这个web 应用相关的class loader 和由它管理的类
如果你使用了JavaBeans Introspector来分析应用中的类,Introspector 缓冲中会保留这些类的引用.结果在你的应用关闭的时候,这些类以及web 应用相关的class loader没有被垃圾回收.
不幸的是,清除Introspector的唯一方式是刷新整个缓冲.这是因为我们没法判断哪些是属于你的应用的引用.所以删除被缓冲的introspection会导致把这台电脑上的所有应用的introspection都删掉.
需要注意的是,spring 托管的bean不需要使用这个监听器.因为spring它自己的introspection所使用的缓冲在分析完一个类之后会被马上从javaBeans Introspector缓冲中清除掉.
应用程序中的类从来不直接使用JavaBeans Introspector.所以他们一般不会导致内部查看资源泄露.但是一些类库和框架往往会产生这个问题.例如:Struts 和Quartz.
单个的内部查看泄漏会导致整个的web应用的类加载器不能进行垃圾回收.在web应用关闭之后,你会看到此应用的所有静态类资源(例如单例).这个错误当然不是由这个类自身引起的.
###配置方式
在web.xml中添加,防止内存泄露
<listener>
<listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
</listener>
源码地址
https://github.com/je-ge/spring
如果觉得我的文章或者代码对您有帮助,可以请我喝杯咖啡。
您的支持将鼓励我继续创作!谢谢!
Spring 菜鸟教程 IntrospectorCleanupListener相关推荐
- Spring Boot 菜鸟教程 12 EasyPoi导出Excel下载
GitHub src="//ghbtns.com/github-btn.html?user=je-ge&repo=spring-boot&type=watch&cou ...
- python九九乘法表菜鸟教程_Python
Python 批量 png 转 ico 一.前言: 首先说一下ico文件的作用:ico是windows的图标文件格式,可以用于浏览器首段图标显示,也可以用于Windows软件.我的话一般用来美化文件夹 ...
- Spring Boot 教程(三): Spring Boot 整合Mybatis
教程简介 本项目内容为Spring Boot教程样例.目的是通过学习本系列教程,读者可以从0到1掌握spring boot的知识,并且可以运用到项目中.如您觉得该项目对您有用,欢迎点击收藏和点赞按钮, ...
- python scrapy菜鸟教程_scrapy学习笔记(一)快速入门
安装Scrapy Scrapy是一个高级的Python爬虫框架,它不仅包含了爬虫的特性,还可以方便的将爬虫数据保存到csv.json等文件中. 首先我们安装Scrapy. pip install sc ...
- JS实例学习笔记——w3cschool+菜鸟教程
基础实例--w3cschool write() document.write("this is a string");//生成普通文本 document.write("& ...
- html class 位置,HTML class 属性 | 菜鸟教程
HTML class 属性 实例 在 HTML 文档中使用 class 属性: 菜鸟教程(runoob.com) h1.intro {color:blue;} p.important {color:g ...
- 【译】Spring官方教程:使用STS的入门指南
原文:Working a Getting Started guide with STS 译者:hanbin 校对:Mr.lzc 这个指南引导您使用 Spring Tool Suite (STS) 去构 ...
- python3菜鸟教程中文-我的python学习方法和资源整理,干货分享
怎么自学python 现在是真正的干货开始了 我实习的时候,python完全零基础,我看的第一个入门资料是一个视频教程,我觉得非常不错,分享给大家 Python教程_400集Python从入门到精通教 ...
- 菜鸟教程python3-Python数据分析,学习路径拆解及资源推荐
原标题:Python数据分析,学习路径拆解及资源推荐 关于Python数据分析,其实网上能够找到的学习资源很多,主要分为两类: 一类是提供各种资源的推荐,比如书单.教程.以及学习的先后顺序: 另一类是 ...
- python菜鸟教程官网绘图-NumPy Matplotlib
NumPy Matplotlib Matplotlib 是 Python 的绘图库. 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案. 它也可以和图形工具包一起使用,如 P ...
最新文章
- 基因测序、生物信息分析平台工作站硬件配置推荐2020
- 6.QML动画——状态与过渡
- c#中在规定时间弹出窗体
- 使用GLSL实现雾化的效果
- Intel汇编语言程序设计学习-第三章 汇编语言基础-中
- 海量路由表能够使用HASH表存储吗-HASH查找和TRIE树查找
- 前端学习(3203):复习类相关知识
- [leetcod] Clone Graph
- 笨猪猪:“暹粒游记”(下)
- wincc v7.3中文版安装教程
- 计算机月考分析报告,月考成绩分析总结与反思范文5篇
- C盘清理方法汇总:SpaceSniffer与Windows.edb
- Leetcode热门100之两数之和
- 计算机参数含义,电脑内存条参数各有什么含义?
- crosscheck(crosscheck是什么意思)
- 安装完ps2019显示计算机丢失,安装ps2019时出现错误代码146
- TFVC解锁被其他成员占用的文件
- 源码解读 Spring中Bean扫描的原理
- minst手写数字识别(带界面)
- Django部署 阿里云CentOS 8+Nginx+uWsgi
热门文章
- 《shell脚本学习指南》学习笔记之入门 一
- EndNote编辑毕业论文格式
- DB 管理的重要工具(数据字典)
- 利用C#编写一个GPS高程拟合(二次曲面拟合模型)程序
- dvwa小马上传大马php,dvwa文件包含_DAY56 文件上传概述与漏洞***
- Fermi架构白皮书_中文详细版.pdf
- 中国行动成功学创始人李践
- 微软正式确认 Windows 7 RTM 的发布时间
- PHP实现pop3,用PHP实现POP3邮件的收取(二)
- android系统签名一样不,解决Android应用签名和系统不一致的问题