spring相关知识
近期学习到的spring知识笔记
一直以来工作中使用到的后端框架都是ssm,springboot, springcloud这些spring框架,但是实际上都是只会照着文档搭建框架或是在搭好的框架中使用spring自带的jdbctemplate进行业务开发,并不知道也不了解各自框架的由来 特点 区别 。一直以来也都没有对这些框架好奇过,要知道,以后职业规划还是走程序开发的话,一直止步于业务开发肯定是不够的,但是之前没有早些清楚这个道理,一直安于现状,一直止步不前,2020 各种契机下,现在重新开始明白学习的重要性之后开始学习。主要学习了曾经使用过的比较熟悉的spring的一系类框架。以下就是我的学习笔记。各个注解的含义是十分重要的,例如@requestbody 是不跳转页面 只返回json数据
ssm
ssm是springMVC,spring,mybatis集合而成的后端开发框架。
- springMVC 。其中springMVC是web框架,属于表现层,主要用于开发控制器(遵循单一责任原则,控制器类不应执行业务逻辑。相反,它应该将业务处理委托给相关的业务类别。这使控制器始终专注于其设计职责是控制应用程序的工作流程),核心是dispatcherServlet,用于接受客户端的请求,接受到请求后转至业务层进行处理(业务层会调用持久层达到对数据进行操作的目的),业务层处理后会返回对象(ModelAndView)给表现层,表现层中得到返回对象后根据sevlet解析后将客户端重定向到逻辑视图名称,以呈现结果或输出。
- spring。业务层。srpring遵循的是依赖倒置原则(从设计车的例子中显而易见的看出 依赖倒置 就是将上层依赖底层 转变为–》底层依赖上层),其主要设计思想是IOC 即 控制反转(将原本属于底层的控制权 通过依赖注入的方式 将控制权转移到了上层 使得底层依赖上层)。实现IOC的方法就是依赖注入(将底层类的实例作为上层类的参数的方式注入到上层类中)。IOC容器的作用就是通过配置元数据(xml文件 或 代码 或其他配置文件)创建,管理,装配(bean之间如何组合)对象组件。
依赖注入(在IOC容器运行过程中,IOC容器动态的将依赖注入组件中)
3. Mybatis。持久层,负责对应dao接口 产生 Mapper层的xml文件(dao层接口名对应 mapper namespace ,dao层方法名对应 mapper 层 id属性)。mybatis 一级缓存作用域 sessiong 耳机缓存作用域 ??????
springboot
自动配置 简化开发的脚手架 开箱即用,和springMVC ,Mybatis集成使用
springcloud
微服务框架,独立开发,独立部署,自治理,化整为零。eruka 服务治理(所有服务在服务治理上注册,登记)实现故障隔离,解耦,各个服务间数据交互均通过服务治理,实现了对服务间数据传递的统一管理