内存泄露监听器

    Spring 刷新Introspector防止内存泄露,使用一个名为org.springframework.web.util.IntrospectorCleanupListener的监听器。

    用法:在web.xml中配置:

<listener> 

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

</listener>

    说明:spring 托管的bean不需要使用这个监听器,因为spring它自己的introspection所使用的缓冲在分析完一个类之后会被马上从javaBeans Introspector缓冲中清除掉,应用程序中的类从来不直接使用JavaBeans Introspector,所以他们一般不会导致内存资源泄露。但是一些类库和框架的整合使用往往会产生这个问题,例如:Struts 和Quartz。由此造成的内存泄漏会导致整个的web应用的类加载器不能进行垃圾回收,在web应用关闭之后,你会看到此应用的所有静态类资源(例如单例),这个错误当然不是由这个类自身引起的。 

相关推荐