【Spring/SpringBoot】SSM(Spring+Spring MVC+Mybatis)方案、各部分职责、与Springboot关系

SSM方案

SSM 是 Spring + Spring MVC + MyBatis 三个框架的整合,是 Java EE 项目中一种非常流行的 持久层 + 业务层 + 表现层 经典架构方案。

它是 SSH(Struts2(控制层)、Spring(业务层)、Hibernate(持久层))框架的轻量级替代方案,目前在国内企业级开发中应用非常广泛,尤其是在需要灵活控制 SQL 和追求性能的场景

各部分职责

  1. Spring

    • 作用:负责业务逻辑层,管理 Bean 的创建、依赖注入(DI)和事务管理
    • 核心:IOC 容器和 AOP
    • 举例 :Service 层的 @Autowired 注入,@Transactional 声明式事务
  2. Spring MVC

    • 作用:负责表现层,处理 HTTP 请求和响应
    • 核心:DispatcherServlet 前端控制器
    • 举例 :Controller 中的 @RequestMapping 注解,接收参数并返回视图或 JSON
  3. MyBatis

    • 作用:负责持久层,与数据库交互,执行 SQL 语句
    • 核心:SQL 映射文件(XML)或注解
    • 举例 :Mapper 接口和 XML 中的 <select><insert> 标签

具体

Controller(控制器)

归属:Spring MVC 模块

作用:作为整个应用的 "入口",负责接收客户端的 HTTP 请求(如 GET / POST),调用相应的 Service 处理业务逻辑,然后返回处理结果(视图或 JSON 数据)

Service(业务逻辑接口)和 ServiceImpl(业务逻辑实现)

归属:Spring 核心模块

作用:负责封装核心的业务逻辑,是 Controller 和 Mapper 之间的桥梁。Service 接口定义业务方法,ServiceImpl 实现这些方法,并调用 Mapper 来操作数据库

Mapper(数据访问接口)

归属:MyBatis 模块

作用:负责与数据库直接交互,定义数据访问的方法(如查询、新增、修改、删除)

与springboot关系

SSM 是传统的三大框架组合,配置相对独立。

Spring Boot 可以快速搭建 SSM 环境,通过 starter 自动配置,减少 XML 配置

总结

SSM 是一套成熟、稳定的 Java Web 开发架构,适合中大型项目

如果追求快速开发和简化配置,可以选择 Spring Boot + MyBatis(相当于 SSM 的简化版)

如果需要更灵活的 SQL 控制和更高的性能,SSM 仍然是一个非常好的选择

相关推荐
清心歌2 分钟前
HashMap实现原理及扩容机制
java
一只大袋鼠2 分钟前
数据库连接池从入门到精通(下):Druid 连接池使用与工具类封装
java·数据库·连接池
禹中一只鱼5 分钟前
【IDEA 出现 `IDE error occurred`】
java·ide·spring boot·intellij-idea
西凉的悲伤5 分钟前
Guava类库——Lists.partition() 高效分批处理列表数据
java·guava
weixin_408099676 分钟前
【保姆级教程】按键精灵调用 OCR 文字识别 API(从0到1完整实战 + 可运行脚本)
java·前端·人工智能·后端·ocr·api·按键精灵
brahmsjiang8 分钟前
Java类加载机制解析:从JVM启动到双亲委派,再到Android的特殊实现
android·java·jvm
yaaakaaang10 分钟前
十一、享元模式
java·享元模式
卓怡学长11 分钟前
基于 SpringBoot 的生活信息分享平台,从 0 到 1 完整实现(附源码 + 数据库)
java·数据库·spring boot·tomcat·maven
ID_1800790547312 分钟前
Python解析小红书(XHS)笔记评论 API,json数据返回参考
java·服务器·数据库
努力努力再努力wz14 分钟前
【C++高阶系列】告别内查找局限:基于磁盘 I/O 视角的 B 树深度剖析与 C++ 泛型实现!(附B树实现源码)
java·linux·开发语言·数据结构·c++·b树·算法