🚀欢迎来到本文🚀
🍉个人简介:陈童学哦,目前学习C/C++、算法、Python、Java等方向,一个正在慢慢前行的普通人。
🏀系列专栏:陈童学的日记
💡其他专栏:C++STL,感兴趣的小伙伴可以看看。
🎁希望各位→点赞👍 + 收藏⭐️ + 留言📝
⛱️万物从心起,心动则万物动🏄♂️
前言:
SSM框架
即是将Spring框架、SpringMVC框架、MyBatis框架整合使用。以简化在web开发中繁琐、重复的操作,让开发人员能够将精力专注于业务处理的开发上它是继SSH之后,目前比较主流的
Java EE
企业级框架,适用于搭建各种大型的企业级应用系统。
SSM框架是由什么整合的呢
SSM框架是
Spring、Spring MVC 、和Mybatis
框架的整合,是标准的MVC模式。标准的SSM框架有四层,分别是
dao层
(mapper),
service层
,
controller层
和
view层
。使用Spring实现业务对象管理,使用Spring MVC负责请求的转发和视图管理,Mybatis作为数据对象的持久化引擎。
SSM中的Spring框架
Spring
是一个轻量级Java开发框架,最早由Rod Johnson创建,目的是为了解决企业级应用开发的
业务逻辑层
和其他各层的
耦合
问题。它是一个分层的JavaSE/JavaEE full-stack(一站式)
轻量级开源框架
,为开发Java应用程序提供全面的基础架构支持。
Spring负责基础架构
,因此Java开发者可以专注于应用程序的开发。简单来说,Spring是一个轻量级的
控制反转
(IoC)和
面向切面
(AOP)的容器框架。
SSM中的SpringMVC框架
Spring MVC
是Spring提供的一个强大而灵活的
web框架
。借助于注解,Spring MVC提供了几乎是POJO的开发模式,使得控制器的开发和测试更加简单。这些控制器一般不直接处理请求,而是将其委托给Spring上下文中的其他bean,通过Spring的
依赖
注入功能,这些
bean
被注入到控制器中。
SSM中的Mybatis框架
MyBatis
是一款优秀的
持久层框架
,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来
配置和映射原生信息
,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。
SSM中的四层结构
标准的SSM框架有四层,分别是
dao层(mapper),service层,controller层和view层
。我们在使用SSM框架时需要知道各层都有什么作用,这样我们在搭建框架的时候才能更加得心应手、事半功倍。
持久层:dao层(mapper)
Dao层
主要是做
数据持久层
的工作,负责和数据库进行联络的一些任务在此封装,dao层的设计首先是dao的接口,配置数据源,以及有关数据库连接的参数在spring的配置文件中进行配置。
业务层:service层
service层
实现
业务的主要逻辑
,是系统架构中体现核心价值的部分。将一个业务中所有的操作封装成一个方法,同时保证方法中所有的数据库更新操作,即保证同时成功或同时失败。避免部分成功部分失败引起的数据混乱操作。
表现层:controller层
controller层
主要负责
具体的业务模块流程的控制
,在此层要调用service层的接口来控制业务流程。
SSM框架的思想
SSM框架
根据SpringMVC、Spring、MyBatis三者各自的特性及应用场景对其操作的的业务进行了
分割
,
降低了耦合性
。
- 1、
Spring
框架主要应用于请求的实际业务逻辑
处理。 - 2、
SpringMVC
框架主要应用于用户界面处理,接收用户请求以及展示请求处理结果。 - 3、
MyBatis
主要应用于数据处理层
,根据请求的处理过程的血药中对数据库进行操作。
SSM框架的工作原理
Spring
Spring
就像是整个项目中装配bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来
实例化对象
。也可以称之为项目中的
粘合剂
。Spring的核心思想是
IOC(控制反转)
,即不再需要程序员去显式地new一个对象,而是让Spring框架帮你来完成这一切。
SpringMVC
SpringMVC
在项目中
拦截用户请求
,它的核心
Servle
t即DispatcherServlet承担中介或是前台这样的职责,将用户请求通过HandlerMapping去匹配Controller,Controller就是具体对应请求所执行的操作。SpringMVC相当于SSH框架中struts。
MyBatis
MyBatis
是对JDBC的封装,它让数据库底层操作变的透明。MyBatis的操作都是围绕一个sqlSessionFactory实例展开的。MyBatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句
映射
。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。
页面发送请求给控制器,控制器调用业务层处理逻辑,逻辑层向持久层发送请求,
持久层与数据库交互
,后将结果返回给业务层,业务层将处理逻辑发送给控制器,控制器再调用视图展现数据。
SSM框架的优缺点
SSM框架有以下优点:
- 1、
低耦合,高内聚
。通过使用IOC容器,依赖注入等技术,SSM框架实现了代码之间的低耦合,提高了代码的可维护性和可扩展性。 - 2、
简化开发
。SSM框架提供了一系列的约定和配置,大大简化了Web应用程序的开发,同时也减少了冗余代码的编写。 - 3、
易于测试
。SSM框架对代码的低耦合性和高内聚性,使得单元测试和集成测试变得更加容易。 - 4、
支持事务处理
。MyBatis提供了数据库事务的管理,Spring提供了事务管理的支持,使得SSM框架可以方便地实现事务管理。 - 5、
开源免费
。SSM框架是开源框架,可免费使用,避免了因为框架使用费用而增加项目成本。
SSM框架有以下缺点:
- 1、
学习曲线较陡峭
。SSM框架整合了三个框架,对初学者而言,需要掌握的知识比较多,学习曲线比较陡峭。 - 2、
配置繁琐
。由于SSM框架整合了多个框架,对于框架的配置较为复杂,需要耐心地阅读文档并进行配置。 - 3、
可能会存在冲突
。由于SSM框架整合了多个框架,有可能会存在框架之间的冲突,需要进行相应的解决。
如果本文对大家有所帮助的话,还望各位能给我点赞、收藏并评论一下,感谢各位💕!!! 另如果大家有什么疑问或者建议的话,欢迎评论区留言。
版权归原作者 陈童学哦 所有, 如有侵权,请联系我们删除。