SpringBoot 框架和 SSM 框架的对比分析

SSM(Spring + Spring MVC + MyBatis)和 Spring Boot 都是基于 Spring 框架的技术栈,但它们在使用方式、配置复杂度、设计理念上有所不同。下面是 SSM 和 Spring Boot 之间的关系及主要区别:

SSM (Spring + Spring MVC + MyBatis)

定义:一种 Java Web 应用开发的技术组合,包含三个框架:

  • Spring:用于依赖注入(DI)和面向切面编程(AOP),提供核心的 IOC 容器。
  • Spring MVC:Spring 的一部分,用于构建 Web 应用程序,遵循 MVC 设计模式。
  • MyBatis:一个持久层框架,简化了数据库操作,支持自定义 SQL 语句。

特点

  • 灵活性:每个框架都可以独立配置,即灵活性高。
  • 手动配置:需要开发者手动配置 XML 文件或注解来管理 bean、数据源、事务等。
  • 稳定:这些框架已非常成熟,有大量的社区支持、文档资源。

适用场景:适用于需要高度定制化配置的企业级应用,或者对于已有系统的迁移和扩展。

详解

SSM框架是spring、spring MVC 、mybatis框架的整合,是标准的MVC模式。

标准的SSM框架有四层:dao层(mapper)、service层、controller层、View层。用spring实现业务对象管理,用spring MVC负责请求的转发和视图管理,mybatis作为数据对象的持久化引擎。

持久层:dao层(mapper)层
作用:与数据库进行联络的任务都封装在此。

Dao层首先设计的是接口,然后在Spring的配置文件中定义接口的实现类。
然后可以在模块中进行接口的调用来进行数据业务的处理。(不在关心接口的实现类是哪个类)
数据源的配置以及有关数据库连接的参数都在Spring的配置文件中进行配置。

业务层:Service层
作用:负责业务模块的逻辑应用设计。

先设计接口然后再设计实类,然后在Spring的配置文件中配置其实现的关联。(业务逻辑层的实现具体要调用到自己已经定义好的Dao的接口上)这样就可以在应用中调用Service接口来进行业务处理。
建立好Dao后再建立service层,service层又在controller层之下,因为既要调用Dao层的接口又要提供接口给controller层。每个模型都有一个service接口,每个接口分别封装各自的业务处理的方法

表现层:Controller层(Handler层)
作用:控制具体的业务模块流程。

配置也是在Spring的配置文件中进行,
调用Service层提供的接口来控制业务流程。
业务流程的不同会有不同的控制器,在具体的开发中可以将我们的流程进行抽象的归纳,设计出可以重复利用的子单元流程模块。
4)View层
作用:和控制层紧密结合,主要负责前台jsp页面的表示。

各层之间的联系
DAO层,Service层都可以单独开发,互相的耦合度很低,完全可以独立进行,这在开发大项目的过程中有大优势,Controller、View层因为耦合度高,因而要结合在一起开发,但也可以看作一个整体独立于前两个层进行开发。这样,在层与层之前我们只需要知道接口的定义,调用接口即可完成所需要的逻辑单元应用,一切显得清晰简单。

Spring Boot

定义:诞生目的是用来简化新 Spring 应用的初始搭建和开发。以 约定大于配置的理念,减少了大量的配置工作。

特点

  • 自动配置:Spring Boot 能根据项目中的依赖自动配置 Spring 上下文,减少配置文件的编写
  • 快速启动:内置许多常用的第三方库,并且可以轻松地添加 Starter 依赖,使得创建独立运行的应用变得非常简单。
  • 嵌入式服务器:内嵌了 Tomcat、Jetty 或 Undertow 等服务器,可以直接打包成可执行的 JAR 文件运行。
  • 生产就绪特性:提供了健康检查、指标收集、外部化配置等多种生产就绪的功能。

适用场景:适合快速开发微服务架构的应用,或者希望减少配置工作量的新项目

关系与比较

  • 集成性:Spring Boot 可看作是对 SSM 技术栈的一种高级封装。Spring Boot 内置了对 Spring、Spring MVC 和 MyBatis 的支持,因此可以在 Spring Boot 项目中使用 SSM 组件,只是配置方式更简洁。
  • 配置方式:SSM 需要更多的手动配置,而 Spring Boot 的自动配置极大简化了这一过程。Spring Boot 提供了大量的默认设置,让开发者专注于业务逻辑的实现。
  • 学习曲线:对初学者来说,Spring Boot 因其简洁的配置,会更容易上手。而对有经验的人,SSM 会提供更多的控制权和灵活性。
  • 维护成本:SpringBoot 自动处理了很多配置细节,长期看,Spring Boot 项目的维护成本更低

        总之,SSM 和 Spring Boot 都是基于 Spring 生态系统的技术栈,但 Spring Boot 通过简化配置和提供一系列开箱即用的功能,进一步提高了开发效率和应用的可维护性。如果你正在开始一个新项目,并且追求快速开发和部署,那 Spring Boot 是最好选择

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值