Java-spring的注入式如何实现的?
spring的注入式如何实现的,它是如何将一个类的实例注入到另一个类里的呢?最好有示例代码
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
spring的注入式如何实现的,它是如何将一个类的实例注入到另一个类里的呢?最好有示例代码
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
因为Spring管理很多对象,对象存在于Spring容器中,当需要把一个对象A注入给另一个对象B时,Spring会通过反射调用对象B的setA(A a)方法,参数为对象A,这是set方法注入,构造函数注入也类似。
比如说xml配置:
<bean id="b" class="B">
<property name="a">
<bean class="A"/>
</property>
</bean>
Spring会:
1、B b = new B(); A a = new A();
2、b.getClass().getMethod("setA").invoke(b,a);
Spring会在解析Xml或Annotation的时候完成以上注入操作。
0
一般用构造方法和属性设置。
<constructor-arg>
<value>111111</value>
</constructor-arg>
<property name="attributeName">
<value>222222</value>
</property>
推荐书籍 《spring 揭秘》。
楼主是要注解的,还是要配制文件的?
你好,spring的注入方式有2种,第一种是手动注入,在spring中声明需要注入的bean标签后,指定需要注入的bean,例如dao层注入datasource,类中需要有相应的get、set。
第二种方式是注解注入,只需要在spring配置文件中声明注解扫描,即可对指定的目录下的类进行注入,类中需要声明注解标示。
这两种方式大家都知道,我想说明的是,当程序访问指定类的时候,会自动找到spring中找对应的实例,并实例化,spring框架运行时,会为配置好的bean进行实例化(手动|注解),不知道是不是你要的答案,谢谢。