Web开发后端总结

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进行项目开发的

相关推荐
PH_modest6 分钟前
【Qt跬步积累】—— 初识Qt
开发语言·qt
BillKu9 分钟前
Java核心概念详解:JVM、JRE、JDK、Java SE、Java EE (Jakarta EE)
java·jvm·jdk·java ee·jre·java se·jakarta ee
怀旧,34 分钟前
【C++】18. 红⿊树实现
开发语言·c++
xiaopengbc1 小时前
在 Python 中实现观察者模式的具体步骤是什么?
开发语言·python·观察者模式
刘婉晴1 小时前
【Java】NIO 简单介绍
java·nio
Python大数据分析@1 小时前
python用selenium怎么规避检测?
开发语言·python·selenium·网络爬虫
ThreeAu.1 小时前
Miniconda3搭建Selenium的python虚拟环境全攻略
开发语言·python·selenium·minicoda·python环境配置
渣哥1 小时前
聊聊我和 ArrayList、LinkedList、Vector 的“一地鸡毛”
java
浮游本尊1 小时前
Java学习第20天 - 性能优化与监控
java
zhangfeng11331 小时前
R 语法高亮为什么没有,是需要安装专用的编辑软件,R语言自带的R-gui 功能还是比较简单
开发语言·r语言