日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring 菜鸟教程 IntrospectorCleanupListener

發(fā)布時(shí)間:2023/12/2 javascript 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring 菜鸟教程 IntrospectorCleanupListener 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

緩沖泄露

spring中提供了一個(gè)名為org.springframework.web.util.IntrospectorCleanupListener的監(jiān)聽器。它主要負(fù)責(zé)處理由JavaBeans Introspector的使用而引起的緩沖泄露。

描述

它是一個(gè)在web應(yīng)用關(guān)閉的時(shí)候,清除JavaBeans Introspector的監(jiān)聽器.在web.xml中注冊這個(gè)listener.可以保證在web 應(yīng)用關(guān)閉的時(shí)候釋放與掉這個(gè)web 應(yīng)用相關(guān)的class loader 和由它管理的類

如果你使用了JavaBeans Introspector來分析應(yīng)用中的類,Introspector 緩沖中會(huì)保留這些類的引用.結(jié)果在你的應(yīng)用關(guān)閉的時(shí)候,這些類以及web 應(yīng)用相關(guān)的class loader沒有被垃圾回收.

不幸的是,清除Introspector的唯一方式是刷新整個(gè)緩沖.這是因?yàn)槲覀儧]法判斷哪些是屬于你的應(yīng)用的引用.所以刪除被緩沖的introspection會(huì)導(dǎo)致把這臺電腦上的所有應(yīng)用的introspection都刪掉.

需要注意的是,spring 托管的bean不需要使用這個(gè)監(jiān)聽器.因?yàn)閟pring它自己的introspection所使用的緩沖在分析完一個(gè)類之后會(huì)被馬上從javaBeans Introspector緩沖中清除掉.

應(yīng)用程序中的類從來不直接使用JavaBeans Introspector.所以他們一般不會(huì)導(dǎo)致內(nèi)部查看資源泄露.但是一些類庫和框架往往會(huì)產(chǎn)生這個(gè)問題.例如:Struts 和Quartz.

單個(gè)的內(nèi)部查看泄漏會(huì)導(dǎo)致整個(gè)的web應(yīng)用的類加載器不能進(jìn)行垃圾回收.在web應(yīng)用關(guān)閉之后,你會(huì)看到此應(yīng)用的所有靜態(tài)類資源(例如單例).這個(gè)錯(cuò)誤當(dāng)然不是由這個(gè)類自身引起的.

###配置方式
在web.xml中添加,防止內(nèi)存泄露

<listener> <listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class> </listener>

源碼地址

https://github.com/je-ge/spring

如果覺得我的文章或者代碼對您有幫助,可以請我喝杯咖啡。
您的支持將鼓勵(lì)我繼續(xù)創(chuàng)作!謝謝!

總結(jié)

以上是生活随笔為你收集整理的Spring 菜鸟教程 IntrospectorCleanupListener的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。