本人菜鸟,spring不怎么了解,看了下spring感觉接口注入和属性注入基本上没什么区别,那接口注入是不是多余的,既然存在那一定有理由,还望各位老鸟们不要笑话我,给我指点下,谢谢!
解决方案 »
- Intra-mart和SSH2框架哪个好啊?
- 一个用servlet写的验证码!
- 能否看到jee类的源码?比如javax.servlet.GenericServlet这个类的源码?
- Hibernate中ISessionFactory的Close方法的疑问
- 关于Tomcat's administration web application
- 小问题,大伙来瞧瞧....急急急
- 求教:axis在串行化一个类时碰到的问题,请教高手进来帮忙
- 【高手指点迷津】J2EE是什么?
- 你们系统怎么做大规模的测试阿?
- 请教大家,如何对这样的字段进行判断
- 将来搞j2ee开发,请问java GUi要学到什么程度,
- org.hibernate.exception.SQLGrammarException (急)
public class MyServlet extends HttpServlet {
public void doGet(
HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
……
}
}这个代码你应该会觉得特别眼熟,我在以前的公司用的框架也是这种方式。
这就是所谓的接口注入。将要扩展的功能都写到规定好的方法里,让容器来调用。属性注入:
在各种类型的依赖注入模式中,设值注入模式在实际开发中得到了最广泛的应用(其中很大一部分得
力于Spring框架的影响)。
在笔者看来,基于设置模式的依赖注入机制更加直观、也更加自然。Quick Start中的示例,就是典
型的设置注入,即通过类的setter方法完成依赖关系的设置。[摘自Spring开发指南]这两种方式显然是有区别的。
“在笔者看来,基于设置模式的依赖注入机制更加直观、也更加自然。”
我觉得作者写的很好,可能你要做几个实际的项目以后,才能体会到。
从注入方法上看,主要可以划分为三种的注入类型,分别是构造函数注入、属性注入和接口注入,Spring支持构造函数注入和属性注入。下面我们继续使用以上的例子说明这三种注入方法的区别。http://www.qqread.com/erp/3/j380307_2.html
楼主去看看
MoAttack moAttack = new MoAttack();
moAttack. injectGeli (geli);
moAttack.cityGateAsk();
GeLi geli = new LiuDeHua();
MoAttack moAttack = new MoAttack();
moAttack.setGeli(geli); ① 调用属性setter方法注入
moAttack.cityGateAsk();
这两段式属性注入和接口注入, 是不是很相似呢?
我的疑问就在这里,还麻烦各位了,我菜鸟不能理解!
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方法。这是我的理解