[Spring]1.set注入

  • 新建一个项目
    image

在UserServiceImpl中如何调用不同的dao类?
可以在代码中写死,如要调用UserDaoImpl:

    private UserDao userDao = new UserDaoImpl();
    @Override
    public void getUser() {
        userDao.getUser();
    }

那要更改为调用UserDaoMysqlImpl呢?
只能更改代码:private UserDao userDao = new UserDaoMysqlImpl();

  • set注入
    在UserServiceImpl中写set方法:
   private UserDao userDao ;

    public void setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }

测试时使用该方法注入参数:

 @Test
    public void simpleTest(){
        UserServiceImpl userService = new UserServiceImpl();
        userService.setUserDao(new UserDaoSQLServerImpl());//set注入
        userService.getUser();
    }
posted @ 2021-11-22 23:04  从零开始学java_wxz  阅读(54)  评论(0)    收藏  举报