您的位置:首页 > 编程语言 > Java开发

spring启动的优化 default-lazy-init=true

2012-04-25 20:40 323 查看
项目采用struts2+spring+hibernate实现,项目的规模不算很大,但系统启动起来很慢

原因在于:

spring容器启动并解释所有的bean配置文件,这个很耗时间。

发现spring的容器是提供了lazy-load的,即默认的缺省设置是bean没有lazy- load,该属性处于false状态,这样导致spring在启动过程导致在启动时候,会默认加载整个对象实例图,从初始化ACTION配置、到 service配置到dao配置、乃至到数据库连接、事务等等。这么庞大的规模,难怪spring的启动时间要这么久。

尝试了一下,把beans的 default-lazy-init改为true就,再次启动,发现节省了不少时间。

以上是针对开发阶段的spring容器启动优化,在部署到实际环境中,倒是没必要设置为lazy-load。毕竟部署到实际环境中不是经常的事,每次启动1分钟倒不是大问题。

并不是说有的beans都能设置default-lazy-init成为true.对于scheduler的bean不能用lazy-init
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring 优化 bean struts dao