spring与guice的区别
来源:互联网 发布:html页面嵌入php 编辑:程序博客网 时间:2024/06/05 16:30
Guice是Google开发的一个轻量级,基于Java5(主要运用泛型与注释特性)的依赖注入框架(IOC)。Guice非常小而且快。Guice是类型安全的,它能够对构造函数,属性,方法(包含任意个参数的任意方法,而不仅仅是setter方法)进行注入。
借斧子的例子说一说spring与guice的区别。
看下边的例子:对于不同社会形态下一个人(java对象,调用者)需要一把斧子(java对象,被调用者)。
(1)原始社会时 劳动社会基本没有分工,需要斧子的人(调用者)只好自己去磨一把斧子,每个人拥有自己的斧子,如果把大家的石斧改为铁斧,需要每个人都要学会磨铁斧的本领,工作效率极低。对应Java里的情形是:java程序里的调用者new一个被调用者的实例。类耦合度极高,修改维护烦琐,效率极低。
(2)工业社会时 工厂出现,斧子不再由普通人完成,而由工厂生产,当人们需要斧子的时候,可以到工厂购买斧子,无需关心斧子是怎么制造出来的,如果废弃铁斧为钢斧,只需改变工厂的制造工艺即可,制作工艺是工厂决定的,工厂生产什么斧子,工人们就得用什么斧子。对应的java里的情形是:Java程序的调用者可以以来简单工厂创建被调用者,变化点被隔离到了简单工厂里,虽然耦合度降低,但是调用者会和工厂耦合,而且需要定位自己的工厂
(3)近代工业社会 工厂蓬勃发展,人们需要什么斧子,只需要提供一个斧子图形,商家会按照你提供的图形将你的斧子订做好,送上门。对应Java里的情形:spring的依赖注入
(4)按需要分配社会 信息进入现代化,人们不再去工厂购买斧子,不再拘泥于需要什么斧子事先画好什么样的图形,只需要打个电话,描述一下需要什么类型的斧子,或许想打造一个物美价廉的斧子,商家会根据市场零件的价格,计算出最优制作工艺,打造最适合的斧子送过来,更加信息化,更加人性化。对应Java里的情形:基于描述的注入,动态的,灵活简单的注入,如:Guice。对于该不该使用Guice,我想也是仁者见仁,智者见智,就象好多论坛里动不动有人会在那里讨论到底学Java还是学.net或者是使用eclipse还是Jbuilder的这类无聊话题,适合和满足项目需求的,又能省工省力简单的完成工作的,就是最好的。
- spring与guice的区别
- Guice与Spring的区别
- Guice与Spring框架的区别
- Guice与Spring框架的区别
- Google Guice 与 Spring 的区别
- Guice与Spring框架的区别
- Guice与Spring框架的区别
- google guice与spring区别
- 解读超轻量级DI容器-Guice与Spring框架的区别
- 解读超轻量级DI容器-Guice与Spring框架的区别
- spring&guice 的AOP
- 超轻量级DI容器框架Google Guice与Spring框架的区别教程详解及其demo代码片段分享
- 超轻量级DI容器框架Google Guice与Spring框架的区别教程详解及其demo代码片段分享
- Spring和Guice的对比
- guice和spring的整合
- 关于选择Spring还是Google-Guice的一些想法
- Guice -- 可替代Spring的轻量级DI框架
- 关于spring和google guice
- 开发宝典:数据库设计技巧,你知道几个?
- void value not ignore
- 用spring的hibernateTemplate操作mysql blob
- Javascript中的线程以及获取动态Dom元素的问题--thread/appendChild/setTimeout
- linux学习必备!《目录结构总结》
- spring与guice的区别
- Java,Android常用包介绍
- Spring注解注入
- DLL中用malloc分配了一块内存,但是在exe程序中释放引发的错误可能原因
- text-overflow:ellipsis,让溢出文本显示省略号
- Js 分享
- 判断一个字符串是否为数字的方法总结
- jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关
- [转]ColorMatrixFilter色彩矩阵滤镜