Web后端开发现在基本上都是基于标准的三层架构进行开发的,在三层架构当中,Controller控制器层 - 负责接收请求响应数据,Service - 业务层负责具体的业务逻辑处理,而Dao - 数据访问层也叫持久层,就是用来处理数据访问操作的,来完成数据库当中数据的增删改查操作。
- 在三层架构当中,前端发起请求首先会到达Controller(不进行逻辑处理),然后Controller会直接调用Service 进行逻辑处理, Service再调用Dao完成数据访问操作。
如果我们在执行具体的业务处理之前,需要去做一些通用的业务处理,比如:我们要进行统一的登录校验,我们要进行统一的字符编码等这些操作时,我们就可以借助于JavaWeb当中三大组件之一的过滤器Filter或者是Spring当中提供的拦截器Interceptor来实现。
而为了实现三层架构层与层之间的解耦,我们学习了Spring框架当中的第一大核心:IOC控制反转与DI依赖注入。
- IOC控制反转:指的是将对象创建的控制权由应用程序自身交给外部的Spring容器或IOC容器,声明为Spring容器或IOC容器当中的Bean对象。
- DI依赖注入指的是容器为程序提供运行时所需要的资源。
除了IOC与DI我们还学习了AOP面向切面编程,还有Spring中的事务管理、全局异常处理器,以及传递的会话技术Cookie、Session以及新的会话跟踪解决方案JWT令牌,阿里云OSS对象存储服务,以及通过Mybatis持久层架构操作数据库等技术。
全局异常处理器:可以捕获我们系统当中所抛出来的异常。
我们在学习这些Web后端开发技术的时候,我们都是基于主流的SpringBoot进行整合使用的。而SpringBoot又是用来简化开发,提高开发效率的。
- Filter过滤器、Cookie、 Session这些都是传统的JavaWeb提供的技术。
- JWT令牌、阿里云OSS对象存储服务,是现在企业项目中常见的一些解决方案。
- IOC控制反转、DI依赖注入、AOP面向切面编程、事务管理、全局异常处理、拦截器等,这些技术都是 Spring Framework框架当中提供的核心功能。
- Mybatis就是一个持久层的框架,是用来操作数据库的。
全局异常处理、拦截器、请求响应,这些都是对Web开发的支持。
在Spring Framework - Spring框架的生态当中,对Web程序开发提供了非常好的支持,像全局异常处理器、拦截器这些都是Spring框架当中Web开发模块所提供的功能,而Spring框架当中的Web开发模块我们也称为Spring MVC框架。
所以,大家会发现,Spring MVC它并不是一个单独的框架,Spring MVC其实就是Spring框架的一部分,是Spring框架当中所提供的Web开发模块,是用来简化原始的Servlet程序的开发的。
像我们前面所编写的Controller以及在Contrioller当中接收请求、响应数据的这一部分的功能,都是Spring MVC当中提供的功能。
而Spring MVC,Spring Framework也就是Spring框架,还有MyBatis,这三个框架,又称为SSM。
如果直接基于传统的SSM框架进行整合开发项目,是比较繁琐的,而且效率也是比较低的,所以在现在的项目企业开发当中,基本上都是基于Spring Boot进行项目开发的。