JAVA web从前端到后端常用的框架介绍之SSM

  • Post author:
  • Post category:java




1.springMVC



spring web mvc 是一种基于Java的实现了web MVC设计模式的请求驱动类的轻量级web框架,即使用了MVC架构模式的思想将web层进行指责解耦,基于请求驱动指的就是使用请求—响应模型。

M-Model 模型(即封装了应用程序的数据和一般他们会组成的pojo)pojo就是Java类

V-view 视图 (是负责呈现模型数据和一般它生成的HTML输出,客户端的浏览器能够解释)。

C-Controller 控制器(是负责呈现处理用户的请求并建立适当的模型,并把它传递给视图渲染)。

spring的web模型、视图、控制器 框架是围绕DispatcherServlet的设计。

springMVC的执行过程:

1.首先用户发送请求—->前端控制器(DispatcherServlet),前端控制器根据请求信息(URL)来决定选择哪一个页面控制器进行处理并把请求委托给页面控制器。

2.页面控制器接收到请求后,进行功能处理,首先需要收集和绑定请求参数到一个对象,这个对象在springMVC中叫命令对象,并进行验证,然后将命令对象委托给业务对象进行处理;处理完毕之后返回一个ModelAndView(模型数据和逻辑视图名);

3.前端控制器收回控制权,然后根据返回的逻辑视图名选择相应的视图进行视图渲染,并把模型数据传入以便视图渲染;

4.前端控制器再次收回控制权,将相应返回给用户。




二、spring



IOC容器(就是具有依赖注入功能的容器)IOC 容器负责实例化、定位、配置应用程序的对象及建立这些对象间的依赖,应用程序无需直接在代码中new相关的对象,应用程序由IOC 容器进行组装。在spring中BeanFactory是 ioc的实际代表者。

AOP 简单的说就是将那些与业务无关,却为业务模块所共同调用的逻辑或责任封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可操作性和可维护性。AOP代表的是一个横向的关系。

AOP用来封装横切关注点,具体可以在如下场景中使用:

.Authentication 权限

.Caching缓存

.Context passing内容传递

.Error handing 错误处理

.Lazy loading 懒加载

.Debugging 调试

.logging,tracing,profilinb,andmonitoring 记录跟踪 优化 校准

.Performance optimization 性能优化

.Persistence 持久化 Resource pooling 资源池

.Synchronization 同步

.Transactions事物



三、M-Mybatis



Mybatis是支持普通的sql查询,存储过程和高级映射的优秀持久层框架。mybatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。mybatis使用简单的xml或注解用于配置和原始映射,将接口和Java的pojos(plain old Java object,普通的Java对象)映射成数据库中的记录。

总体流程:

第一步;加载配置并初始化

触发条件:加载配置文件。将SQL的配置信息加载成为一个个MappedStatement对象(包括了传入参数映射配置,执行的SQL语句,结果映射配置),存储在内存中。

第二步;接收调用请求

触发条件:调用mybatis提供的API

传入参数:为Sql的ID和传入参数对象

处理过程:将请求传递给下层的请求处理层进行处理。

第三步;处理操作请求

触发条件:API接口层传递请求过来

传入参数:为sql的ID和传入参数对象

处理过程:

1.根据sql 的ID查找对应的MappedStatement对象。

2.根据传入参数对象解析MappedStatement对象,得到最终要执行的sql和执行传入参数。

3.获取数据库连接,根据得到的最终sql语句和执行传入参数到数据库执行,并得到执行结果。

4.根据MappedStatement对象中的结果映射配置对得到的执行结果进行转换处理,并得到最终的处理结果。

5.释放连接资源。

第四步;返回处理结果将最终的处理结果返回

mybatis最强大的特性之一就是它的动态语句功能。

转载于:https://www.cnblogs.com/liyucheng/p/9036882.html