java Spring Bean工厂装卸
- Spring何时可以优雅地卸载Spring容器(XMLBeanFactory)李>
- 当应用程序正在运行,但BeanFactory的唯一处理程序超出范围时会发生什么李>
- 装载弹簧容器的理想方式是什么?做
handler = new BeanFactory()
是正确的方法吗李>
更新:
当容器超出范围时,我们确实希望调用close()方法,从而释放所有保留的资源。但事实并非如此!我遇到了这样一个例子:我的spring容器超出了作用域,但内存仍然很满(OutOfMemory错误)。原因是我的Spring容器创建的SessionFactory对象从未被垃圾收集,因为它们是静态创建的。这意味着当容器超出范围时close()->destroy()
从未被调用。让我相信弹簧本身存在泄漏问题
# 1 楼答案
然后你再关上它:
对于网络应用: