第1天--Spring的IOC
IOC(控制反转)
将创建对象的权利由程序员变成用户
eg:
非IOC
public interface UserDao {
void getUser();
}
public class UserDaoImpl implements UserDao {
public void getUser(){
System.out.println("getUser...");
}
}
public interface UserService{
void getUser();
}
public class UserAerviceImpl{
private UserDao userDao = new UserDaoImpl();
public void getUser(){
userDao.getUser();
}
}
IOC(set注入实现控制反转)
public interface UserDAO {
void getUser();
}
public class UserDAOImpl implements UserDAO {
public void getUser(){
System.out.println("getUser...");
}
}
public interface UserService{
void getUser();
}
public class UserAerviceImpl{
private UserDao userDao;
public void setUserDao(UserDao userDao){
this.userDao = userDao;
}
public void getUser(){
userDao.getUser();
}
}
关于IOC的文字解释:
所有的类都会在spring容器中登记,告诉spring你是个什么东西,你需要什么东西,然后spring会在系统运行到适当的时候,把你要的东西主动给你,同时也把你交给其他需要你的东西。所有的类的创建、销毁都由 spring来控制,也就是说控制对象生存周期的不再是引用它的对象,而是spring。对于某个具体的对象而言,以前是它控制其他对象,现在是所有对象都被spring控制,所以这叫控制反转。

浙公网安备 33010602011771号