Spring 中的default-lazy-init="true" 和 lazy-init="true"
1、spring的default-lazy-init参数
spring在启动的时候,会默认加载会默认加载整个对象实例图,从初始化ACTION配置、到 service配置到dao配置、乃至到数据库连接、事务等等。这样可以减少web服务器在运行时的负担,但是对于开发者来说无疑是效率极低的一个设置了。
spring提供了default-lazy-init属性,其配置形式如下,applicationContext.xml中:
< beans default-lazy-init ="true" >
< /beans>
我用以前一个office项目测试了下,因为office的spring文件很多,我就配置了下,启动时间减少60%左右。
2、Spring 中lazy-init 和abstract 属性
1.lazy-init
< beans>
<bean id="service1" type="bean路径" lazy-init="true"/>
<bean id="service2" type="bean路径" lazy-init="false">
<property name="service1" ref="service1"/>
</bean>
< /beans>
以上两个bean,一个lazy-init属性为true,一个为false,由什么区别呢
当 IoC容器启动时,service2会实例化,而service1则不会;但是但容器实例化service2时,service1也被实例化了,为什么呢,因为service2需要它。也就是说lazy-init="true"的bean,IoC容器启动时不会实例化该bean,只有当容器需要用到时才实例化它。lazy-init有利于容器效率,对于不需要的bean可以先不管。
2.abstract
< bean id="baseTxService" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true"> < /bean>
bean abstract="true"时,该bean不会被实例化,上面的bean是个模板
来源:http://blog.csdn.net/dracotianlong/article/details/8989874
最新文章
- 猿团YTFCloud生态系统,全面服务创业者
- PHP 文件创建/写入
- WPF学习03:Element Binding
- 8、SpringMVC源码分析(3):分析ModelAndView的形成过程
- AutoCAD 2013官方简体中文破解版(32 / 64位),带激活码和注册机
- UE4 Fade out Mesh
- 【漏洞分析】dedecms有前提前台任意用户密码修改
- 基于Vue2.x的小米商城移动端项目
- 编译phoneix源码,整合Hbase
- bootstrap timepicker 在angular中取值赋值 并转化为时间戳
- SpringBoot2.0针对请求参数@RequestBody验证统一拦截
- Ubuntu16.04 本地提权漏洞复测过程
- C# 对Excel操作与分析
- 【Linux 进程】孤儿进程、僵尸进程和守护进程
- java之args[0]
- dns over https 简单测试(docker 运行)
- Unix 系统下的 Nginx 1.4.x
- java局部变量和临时变量
- Concurrent Request:Inactive phase,No Manager status
- iOS程序启动原理---iOS-Apple苹果官方文档翻译