1.有参构造
创建类,定义属性,生成有参数构造
publicclass Book {
private String bname;
private String author;
//生成有参数构造
public Book(String bname, String author) {
this.bname = bname;
this.author = author;
}
}
配置属性注入
<!-- 使用有参数构造注入 -->
<bean id="book"class="cn..attr.Book">
<!-- 体现有参数构造
name: 属性名称
value:设置值
-->
<constructor-arg name="bname"value="易筋经"></constructor-arg>
<constructor-arg name="author"value="小王"></constructor-arg>
</bean>
2.set方法
创建类,定义属性,生成属性set方法
publicclass Orders {
private String oname;
private String oaddress;
//生成set方法
publicvoid setOname(String oname) {
this.oname = oname;
}
publicvoid setOaddress(String oaddress) {
this.oaddress = oaddress;
}
publicvoid add() {
System.out.println("orders:"+oname+"::"+oaddress);
}
}
配置属性注入
<!-- set方法注入 -->
<bean id="orders"class="cn.attr.Orders">
<!-- name: 属性名称
value:设置值 -->
<property name="oname"value="洗髓经"></property>
<property name="oaddress"value="嵩山"></property>
</bean>
3.注入对象类属性
<!-- 注入对象类型属性 -->
<bean id="userDaoImpl"class="cn.attr.UserDao"></bean>
<bean id="userService"class="cn.attr.UserService">
<!-- 如果注入普通类型属性使用value属性,如果注入对象类型属性,使用ref属性
name: 类里面的属性名称
ref:dao对象所在标签id值
-->
<property name="userDao"ref="userDaoImpl"></property>
</bean>
注入复杂属性
<bean id="customer"class="cn.attr.Customer">
<!-- 数组 -->
<property name="arrs">
<list>
<value>lucy</value>
<value>mary</value>
<value>jack</value>
</list>
</property>
<!-- list -->
<property name="list">
<list>
<value>小王</value>
<value>小金</value>
<value>小奥</value>
</list>
</property>
<!-- map-->
<property name="map">
<map>
<entry key="football"value="足球"></entry>
<entry key="basketball"value="篮球"></entry>
</map>
</property>
<!-- properties-->
<property name="properties">
<props>
<prop key="driverClass">com.mysql.jdbc.Driver</prop>
<prop key="jdbcUrl">jdbc:mysql:///day01</prop>
</props>
</property>
</bean>
其他注入
引入p命名空间: xmlns:p="http://www.springframework.org/schema/p"
<!-- p名称空间注入 -->
<bean id="orders" class="cn.attr.Orders" p:oname="abcdefwwww"></bean>
<!-- spel -->
<bean id="orders" class="cn.attr.Orders">
<property name="oname" value="#{'abdoopooo'}"></property>
</bean>