spring容器的DI(依赖注入)xml版

DI:依赖注入:给属性赋值,spring提供了两种方法给属性赋值 1.set方法注入  2.构造器注入

给属性赋值的操作就是装配


第一种:set方法的依赖注入


写一个用来装配得Person.java类

public class Person {
	private Long id;
	private String name;
	private Student student;
	private List lists;
	private Set sets;
	private Map map; //set和get方法在这里省略	
}


另一个实体类Student.java

public class Student {
	public void say(){
		System.out.println("student");
	}
}

在src目录下配置applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>  
<beans xmlns="http://www.springframework.org/schema/beans"  
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
       xsi:schemaLocation="http://www.springframework.org/schema/beans  
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">  
		<bean id="person" class="com.mo.entity.Person"> 
      		<!-- 
        		property就是一个bean的属性
        		name就是用来描述属性的名称
        		value就是该属性的值
        	 -->
        	<property name="name" value="狗娃"></property>
        	<property name="id" value="3"></property>
        	
        	<!-- 装配一个实例对象 -->
        	<property name="student" ref="student"></property>
        	
        	<!-- 装配一个list集合 -->
        	<property name="lists">
				<list>
					<value>list1</value>
					<value>list2</value>
				</list>
        	</property>
     
     		<!-- 装配一个set集合 -->
     		<property name="sets">
     			<set>
     				<value>set1</value>
     				<value>set2</value>
     			</set>
     		</property>
     
     		<!-- 装配一个map集合 -->
     		<property name="map">
     			<map>
     				<entry key="姓名">
     					<value>狗娃</value>
     				</entry>
     			</map>
	     	</property>
	     	
			</bean>
	        <bean id="student" class="com.mo.entity.Student"></bean>
</beans>         



第二种:构造器的依赖注入


在Person.java类添加几个构造器

public Person(String name) {
		this.name = name;
	}
	
	public Person(String name, Student student) {
		this.name = name;
		this.student = student;


在applicationContext.xml进行配置

<bean id="person" class="com.mo.entity.Person"> 
			<!--
			
				 利用构造器进行依赖的注入 
				 index 角标 从0开始 就是构造器参数的第几个
				 ref 引用其他的bean
			 -->
	     	<constructor-arg index="0" value="狗娃 "></constructor-arg>
	     	<constructor-arg index="1" ref="student"></constructor-arg>
		</bean>
	    <bean id="student" class="com.mo.entity.Student"></bean>

这样就装配完毕



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值