ssm框架基础分析

在实训的10天把ssm重新复习了一遍。SSM框架即Spring+SpringMVC+MyBatis。

1.Spring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java 开发框架,Spring使用基本的JavaBean来实现。 简单来说,Spring有着两大思想,一个是控制反转(IoC)和面向切面(AOP)。

Spring在项目中就像一个大工厂,负责装配。

1.1 IOC(控制反转)

​ 所谓控制反转,就是指把生成对象的权力转换,交给spring来控制,对象与对象之间的耦合度降低,不需要知道怎么实现的,只需要拿来用即可,Spring会把它一一配好,说是说一一配好,其实还是需要我们手动去写配置,刚开始入门的时候配置是真的繁琐。(后面靠SpringBoot可以解决这烦人的配置)

1.2 AOP(切面编程)

其实在我看来所谓的切面编程就是一种代理方法。生成一个代理对象,然后将方法切入到对象的前面后面和异常,这样做能减少重复代码的使用。就比如操作数据库,每次都要开启事务,提交事务,这些事情完全可以交给代理对象实现。

2.Spring MVC 

分离了控制器、模型对象、分派器以及处理程序对象的角色,分离之后按需求实现,SpringMVC就是相当于把原本Servlet的事给全干了,但是他比Servlet方便,在SpringMVC中叫做Controller(控制器),一共  有下面几个组件。

1.前端控制器(DispatcherServlet) 2. 处理器映射器(HandlerMapping) 3. 处理器(Handler) 4. 处理器适配器(HandlAdapter) 5. 视图解析器(View Resolver) 6. 视图(View)

​ org.springframework.web.servlet.DispatcherServlet相当于过滤器,所有的请求都要先经过这个控制器,然后来决定你要去哪,你要去执行哪个方法,这个核心控制器里面来,他在根据你的请求信息给你分配方法执行,然后如果你的方法返回值是String,那他就会根据视图解析器去寻找有没有那个JSP或者html页面,然后给你返回,如果是一个对象,他可以返回一个Json字符串。

3.MyBatis 

是一个基于Java的持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注解用于置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。mybatis框架,这个是针对持久层的框架,他对数据库进行了一点封装,但是并不像hibernate那样这么彻底,还是需要手动去写sql语句,所以可以对数据库查询操作进行调优。

​ mybatis感觉比较困难的地方就是一对多和多对一,一对多感觉自己还不是特别熟练还是注意一下。之后可以使用MyBatis Plus来快速生成。

4.最终的ssm整合

而ssm就是将三个框架进行整合基于三层架构的模式,整合的思路是将事务的控制交给Spring进行声明式事务控制,将Session工厂交给Spring容器进行管理,从容器中获得执行操作的Mapper实例。

猜你喜欢

转载自blog.csdn.net/qq_43458555/article/details/107979583