public class UserServiceImpl implement UserService{
UserDao userDao=new UserDaoImpl();//控制反转
public void addUser(){
userDao.addUser();
}
}
public class UserServiceImpl implement UserService{
UserDao userDao=new UserDaoImpl();//直接在service层实例化dao,service和dao耦合
public void addUser(){
userDao.addUser();
}
}
public class UserServiceImpl implement UserService{
UserDao userDao;
public void setUserDao(UserDao userDao){
this.userDao=userDao;
}
public void addUser(){
userDao.addUser();
}
}
public class UserServiceImpl implements UserService {
private UserDao userDao ;
public void setUserDao(UserDao userDao) {
this. userDao = userDao;
}
@Override
public void addUser(User user) {
// TODO Auto-generated method stub
this. userDao.addUser( user);
}
}
public class UserDaoImpl implements UserDao{
@Override
public void addUser(User user ) {
// TODO Auto-generated method stub
System. out.println("添加用户" );
}
}
<?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.xsd">
<!-- 创建 dao实现类 -->
<bean id="userDaoId" class="com.wency.dao.UserDaoImpl" ></bean>
<!-- 创建service -->
<bean id="userService" class="com.wency.a_ioc.UserServiceImpl" >
<property name= "userDao" ref="userDaoId" ></property>
</bean >
</beans>
public class TestUserService {
@Test
public void testAddUser(){
//beans.xml的路径
String configPath="com/wency/a_ioc/Beans.xml" ;
//方法一:使用BeanFactory实现延迟加载beans.xml,userService在第一次调用getBean时才实例化
BeanFactory factory= new XmlBeanFactory(new ClassPathResource(configPath ));
//方法二:使用ApplicationContext加载beans.xml
// ApplicationContext applicationContext=new ClassPathXmlApplicationContext(configPath);
// UserService userService = (UserService) applicationContext.getBean("userService");
UserService service=(UserService) factory.getBean("userService" );
User user= new User();
user. setName("张三");
service.addUser( user);
}
}
829



被折叠的 条评论
为什么被折叠?



