spring(控制反转思想)

1,spring是一个轻量级控制反转和面向切面编程的框架(容器)。
2,spring boot是一个快速开发的脚手架,基于spring的,可以快速开发单个微服务。
3,springcloud是基于springboot的,是多个微服务的集合。
4,spring由七大部分组成,core aop dao orm web web-mvc context组成。
5,缺点:配置繁琐。
6,IOC是一种思想
之前的开发思路

interface UserDao
UserDaoImpl
UesrService
UserServiceImpl
//之前我们的调用方式为
private UserDao userdao=new UserDaoImpl();
private UserService userservice = new UserviceImpl();
//可是当我们突然改变了一个接口的实现类
//我们将UserDao的接口实现类修改为UserMysqlDaoImpl
//此时我们程序里的代码应该是
private UserDao userdao=new UserMysqlDaoImpl();//这样的开发会修改大量代码

现在通过一个set接口改变原有的方式

class UserServiceImpl implements UserService{
     private UserDao userdao;
     public void setUserDao(UserDao userdao){
     this.userdao=userdao;
     }
     public void getuser(){
     userdao.getuser();
     }
}
psvm{
UesrService userService = new UserServiceImpl;
userService.setUserDao(new UserMysqldaoImpl)
//此时我们注入什么类型的实现类,那么UserServiceImpl 里的getuser就会用什么实现类
}

此时这个set方法实现了对实现类的注入,避免了程序媛主动的去创建
最主要的反转思想就是如下代码的转变。

     private UserDao userdao=new UserDaoImpl;

现在

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

主动权原来在srvice层,现在实在用户层,用什么类型的UserDao我们就注入什么。
在这里插入图片描述
https://www.docs4dev.com/docs/zh/spring-framework/5.1.3.RELEASE/reference
********,写了半天笔记,突然断网,********白做了两个小时笔记。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值