快速业务通道

Spring注入 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20
n>子元素。每个<bean>元素定义了一个bean如何被装配到Spring容器中。

下面就是这个例子的XML配置

<beans>     <bean id="foo"         class="com.springinaction.Foo"/>   <bean id="bar"         class="com.sprionginaction.Bar"/>    </beans>

这是个简单的BEAN装配XML文件在Spring配置了两个BEAN。

添加一个BEAN:

在Spring中对一个BEAN的最基本的配置包括Bean的ID和它的全称类名。

在上面的学生例子中,我们往文件中添加CourseDao和StudentDao的实现类的定义

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Beans PUBLIC "-//SPRING//DTD BEAN//EN"http://www.springframework.org/dtd/spring-beans.dtd”>     <beans>       <bean id="courseDao" class="com.springinaction.service.training.CourseDaoImpl"/>       <bean id="studentDao" class="com.springinaction.service.training.StudentDaoImpl"/>    </beans>

原型与单实例:

默认情况下,Spring中的所有bean都是单例(singletons),这意味着Spring维护bean的唯一实例,所有的依赖对象引用同一实例。对

bean工厂的getBean()方法的每一次调用都返回同一个实例

<bean id="foo" class="com.springinaction.Foo" singletons="false"/>

在这里有个属性singletons,把它设为false就成了原型,如为TRUE,就是单例。

请大家注意每次用bean的名字调用getBean()方法都会获得一个这个BEAN的新实例,。如果BEAN使用的是有限资源,如数据库和网络连接的话这样使用就不好了。所有尽量不要把singletons设为false。除非确实需要。

通过Set方法注入依赖

public void setMaxStudents(int maxStudents){          this.maxStudents=maxStudents;     }     public int getMaxStudents(){         return maxStudents;    }

Spring注入(4)

时间:2011-01-27

Bean配置

<bean id="foo"       class="com.springinactiong.Foo">      <property name="name">       <value>Foo MyFoo</value>      </property>   </bean>

假如为了限制每门课程的注册学生人数最多30人,

<bean id="courseService">      <property name="maxStudents">       <value>30< /value>       </property>   </bean>

引用其他 bean 我们可以使用 <property>元素来设置指向其他Bean的属性。

<property>的子元素<ref>可以实现:

<bean id="foo"      class="com.springinactiong.Foo">    <property name="bar">       <ref bean="bar">      </property>   </bean>    <bean id="bar"       class="com.springinactiong.Bar"/> <bean id="courseService"      class="com.springinaction.service.training.CourseDaoImpl"/>    <property name="studentService">       <ref bean="studentService">      </property>   </bean>    <bean id="studentService"   

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号