关于网友提出的“ spring的接口注入和属性注入的区别是什么,那个更有优势”问题疑问,本网通过在网上对“ spring的接口注入和属性注入的区别是什么,那个更有优势”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: spring的接口注入和属性注入的区别是什么,那个更有优势描述:
本人菜鸟,spring不怎么了解,看了下spring感觉接口注入和属性注入基本上没什么区别,那接口注入是不是多余的,既然存在那一定有理由,还望各位老鸟们不要笑话我,给我指点下,谢谢!
解决方案1:
学习中。。。。
解决方案2: 接口注入与属性注入很象啊
只不过一个是在类中定义方法
而另一个是在接口中定义
感觉 没啥区别啊
GeLi geli = new LiuDeHua();
MoAttack moAttack = new MoAttack();
moAttack. injectGeli (geli);
moAttack.cityGateAsk();
中的injectGeli()方法是该类实现了一个接口所必须实现的方法,只要实现了该接口,就可以通过这个方法注入。
GeLi geli = new LiuDeHua();
MoAttack moAttack = new MoAttack();
moAttack.setGeli(geli); ① 调用属性setter方法注入
moAttack.cityGateAsk();
中的 setGeli()方法是在MaAttack类中定义的,现在通过这个方法的注入不需要实现任何的接口。只需要在MaAttack中定义这个setGeli方法。
这是我的理解 解决方案4:
这个说的很好很清楚啊 文章写的很精妙啊 解决方案5:
小菜 进来学习的 先帮顶下
解决方案6:好问题 帮顶了。
解决方案7:学会Type2就OK拉,学会set注入
解决方案8: 我也是菜鸟。和封装的等级是不是有关系呢?
这个问题就和为什么有接口类似
解决方案10:注入这种东西不多余 我虽然不用Spring 但是可以通过操作XML文件来更改类里的参数或者对象不同的实现 的确很好玩
解决方案11: IoC的三种类型
从注入方法上看,主要可以划分为三种的注入类型,分别是构造函数注入、属性注入和接口注入,Spring支持构造函数注入和属性注入。下面我们继续使用以上的例子说明这三种注入方法的区别。
http://www.qqread.com/erp/3/j380307_2.html
楼主去看看
public class MyServlet extends HttpServlet {
public void doGet(
HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
……
}
}
这个代码你应该会觉得特别眼熟,我在以前的公司用的框架也是这种方式。
这就是所谓的接口注入。将要扩展的功能都写到规定好的方法里,让容器来调用。
属性注入:
在各种类型的依赖注入模式中,设值注入模式在实际开发中得到了最广泛的应用(其中很大一部分得
力于Spring框架的影响)。
在笔者看来,基于设置模式的依赖注入机制更加直观、也更加自然。Quick Start中的示例,就是典
型的设置注入,即通过类的setter方法完成依赖关系的设置。[摘自Spring开发指南]
这两种方式显然是有区别的。
“在笔者看来,基于设置模式的依赖注入机制更加直观、也更加自然。”
我觉得作者写的很好,可能你要做几个实际的项目以后,才能体会到。