<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- <bean id="userDao" class="com.itheima.dao.impl.UserDaoImpl" scope="singleton" init-method="init" destroy-method="destory"></bean>-->
<!-- <bean id="userDao" class="com.itheima.factory.StaticFactory" factory-method="getUserDao"></bean>-->
<!-- <bean id="factory" class="com.itheima.factory.DynamicFactory"></bean>
<bean id="userDao" factory-bean="factory" factory-method="getUserDao"></bean>-->
<bean id="userDao" class="com.itheima.dao.impl.UserDaoImpl">
<property name="username" value="孩子"></property>
<property name="age" value="23"></property>
<property name="stringList">
<list>
<value>燕子</value>
<value>甜子</value>
<value>洛子</value>
</list>
</property>
<property name="userMap">
<map>
<entry key="u1" value-ref="user1"></entry>
<entry key="u2" value-ref="user2"></entry>
</map>
</property>
<property name="properties">
<props>
<prop key="p1">ppp1</prop>
<prop key="p2">ppp2</prop>
<prop key="p3">ppp3</prop>
</props>
</property>
</bean>
<bean id="user1" class="com.itheima.domain.User">
<property name="name" value="tom"></property>
<property name="addr" value="连云港"></property>
</bean>
<bean id="user2" class="com.itheima.domain.User">
<property name="name" value="Jerry"></property>
<property name="addr" value="淮安"></property>
</bean>
<!-- set注入
<bean id="userService" class="com.itheima.service.impl.UserServiceImpl">
<property name="userDao" ref="userDao"></property>
</bean> -->
<!-- p注入 是讲set注入中的 property简化成p
<bean id="userService" class="com.itheima.service.impl.UserServiceImpl" p:userDao-ref="userDao"></bean>-->
<bean id="userService" class="com.itheima.service.impl.UserServiceImpl">
<constructor-arg name="userDao" ref="userDao"></constructor-arg>
</bean>
<import resource="applicationContext-user.xml"></import>
<import resource="applicationContext-product.xml"></import>
</beans>
public interface UserDao {
public void save();
}
public class UserDaoImpl implements UserDao {
private List<String> stringList;
private Map<String, User> userMap;
private Properties properties;
public void setStringList(List<String> stringList) {
this.stringList = stringList;
}
public void setUserMap(Map<String, User> userMap) {
this.userMap = userMap;
}
public void setProperties(Properties properties) {
this.properties = properties;
}
private String username;
private int age;
public void setUsername(String username) {
this.username = username;
}
public void setAge(int age) {
this.age = age;
}
public void save() {
System.out.println(stringList);
System.out.println(userMap);
System.out.println(properties);
System.out.println(username+" "+age);
System.out.println("save running......");
}
}
public interface UserService {
public void save();
}
public class UserServiceImpl implements UserService {
private UserDao userDao;
public UserServiceImpl() {
}
public UserServiceImpl(UserDao userDao) {
this.userDao = userDao;
}
public void save() {
userDao.save();
}
}
public class StaticFactory {
public static UserDao getUserDao(){
return new UserDaoImpl();
}
}
public class DynamicFactory {
public UserDao getUserDao(){
return new UserDaoImpl();
}
}