我没有使用过sun官方的那堆重量级j2ee架构,知道j2ee是从ssh开始,用了这么长回见,包括研究源码后,我赫然发现对于spring,我往往只用到了它的两个功能,依赖注入和事务管理,可是依赖注入的原理我都搞明白,手动注入又有啥不可以,虽然说手动注入有耦合问题,但是spring的注入并不是很灵活,尤其是需要临时生成某个属性参数的场合。不用spring进行事务管理,很多数据库中间件自己的模板管理的也不错,那spring还有什么存在的意义。spring这东西当初到底为了啥被发明出来的
5条回答 默认 最新
- zuoshang 2014-11-06 11:16关注
用了这么长时间Spring,我已经将依赖注入看的比较淡了,我更看重Spring在Java领域的整合能力。
依赖注入最早的目的就是解耦,包括事务管理也是为了解耦,所谓解耦说白了就是替换底层时,上层代码无需修改。说的专业就是,上层代码不关心底层的实现,接口对接好就ok。但实际上,底层替换这种事情,一般人在有生之年估计都遇不到一次,呵呵。
所以我喜欢的依赖注入,是因为它帮我管理了单例,我不用去纠结自己写懒汉式单例,还是饿汉式单例,甚至牛逼的枚举式单例。至于spring提供bean的多实例,从来不用,和我自己new没什么区别。 这里应该说明了你的“手动式注入”吧。我更看中spring的整合能力,现在凡是java领域比较火的工具和方向,基本spring都会插一脚。开个玩笑,spring嫌大多数人代码写的太丑,说算了算了你们干脆都配在我的xml里吧,然后用我提供的xxxTemplate方法简单传几个参数,就能发JMS、发webservice、插数据库、存缓存、批处理等等等,呵呵 :D 。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 关于c语言的学习问题
- ¥15 activity升级到flowable工作流act_ge_bytearray的草稿json数据复制到act_de_model 的model_editor_json的脚本
- ¥15 cvi使用CreateThread创建线程时,出现存储空间不足无法处理此命令的错误
- ¥15 求苹果推信imessage批量推信技术
- ¥15 ubuntu 22.04 系统盘空间不足。隐藏的docker空间占用?(相关搜索:移动硬盘|管理系统)
- ¥15 c++ word自动化,为什么可用接口是空的?
- ¥15 Matlab计算100000*100000的矩阵运算问题:
- ¥50 VB6.0如何识别粘连的不规则的数字图片验证码
- ¥16 需要完整的这份订单所有的代码,可以加钱
- ¥30 写一个带界面控制的机房电脑一键开机关机并且实时监控的软件