Bean的基本配置
id属性
id属性确定bean的唯一标识符,容器对bean的管理,访问,以及该bean的依赖关系,都通过该属性来完成。bean的id属性在Spring容器中应该是唯一的。
class属性
class属性指定bean的具体实现类,不能是接口(接口不能new对象)。使用类的全名。
实例化Bean的三种方式
调用构造器“new”一个bean实例(最常用的实例化方式。)
调用静态工厂方法创建bean
调用实例工厂方法创建bean
依赖注入方法
1.Setter方法注入
在bean实例化完成之后进行依赖关系注入。
配置通过property属性指定。
类中要定义对应的Setter方法。
<!-- setter注入实例 --> <bean id=“paper" class=“com.sevice.A4Paper"> <property name=“size"><value>A4</value></property> </bean>
2.构造器方法注入
在bean实例化时,已经完成依赖关系的注入。
通过constructor-arg元素配置。
type属性指定类型。
ref属性指定实例。
<bean id="person" class="org.cric.action.Person"> <constructor-arg type="org.cric.dao.Axe" ref="axe"/></bean>
3.集合类型注入
List注入
使用list元素。对应的类型为java.util.List
Map注入
使用entry元素,为每个项目指定key和value。
对应的类型为java.util.Map
Set注入
使用set元素。
对应的类型为java.util.Set
Properties注入
使用props及prop元素
对应的类型为java.util.Properties
java.util.Properties public class OrderServiceBean { private Set<String> sets = new HashSet<String>(); private List<String> lists = new ArrayList<String>(); private Properties properties = new Properties(); private Map<String, String> maps = new HashMap<String, String>();} //这里省略属性的getter和setter方法
<bean id="order" class="cn.itcast.service.OrderServiceBean"> <property name="lists"> <list> <value>lihuoming</value> </list> </property> <property name="sets"> <set> <value>set</value> </set> </property> <property name="maps"> <map> <entry key="lihuoming" value="28"/> </map> </property> <property name="properties"> <props> <prop key="12">sss</prop> </props> </property> </bean>