第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控制,所以这叫控制反转。

 

posted @ 2021-09-15 22:41  现在开始努力  阅读(26)  评论(0)    收藏  举报