最近一次更新时间:2019-8-6
springboot 只是组装了spring和springmvc。SSM中的SS指的是Spring SpringMVC,M是指MyBatis。
目录直通车
一、SSM(Spring+SpringMVC+MyBatis)架构
一、SSM(Spring+SpringMVC+MyBatis)架构
这篇文章主要讲MSCM(这是我对mapper,service,controller,model的简称)的实际操作上的作用,已过滤口水话。后面会有实例图片及源码。
1、 SSM的工作原理
如果不先了解工作原理的话,说什么层都是一头雾水。我找了两张比较详细的流程图。
(1) SSM系统架构
(2) SSM程序执行流程
2、 MSCM是什么及其作用
(1) controller
控制层
相当于MVC的C层,controller通过service的接口来控制业务流程,也可通过接收前端传过来的参数进行业务操作。
(2) model
数据模型层
相当于MVC的M层,存放实体类,与数据库中的属性值基本保持一致。
(3) service
业务逻辑层
主要是针对具体的问题的操作,把一些数据层的操作进行组合,间接与数据库打交道(提供操作数据库的方法)。
要做这一层的话,要先设计接口,在实现类。
(4) mapper
数据存储对象
相当于DAO层,mapper层直接与数据库打交道(执行SQL语句),接口提供给service层。
二、 SpringBoot + Mybatis三层架构
源码架构分析
最近一次更新时间:2019-8-6
之前搞Spring boot 的时候,没学过Spring,一上来就拿了一套代码,想马上使用这套代码实现crud(增删改查),不料想居然连结构都搞不清楚 ^_^,请看下面,认真看完了没看明白,请老铁提刀砍我。
实体类这一层,有的开发写成pojo,有的写成model,也有domain,也有dto(这里做参数验证,比如password不能为空等),实体类如果你不懂什么东西的话,那你就想成是范围。
mapper 是Mybatis 操作数据库的那一层,就是dao层。
service包含了serviceImpl(service接口的实现类) 是提供给controller 使用的,针对于某些业务将 dao 的对于某些表的crud进行组合,也就是说间接的和数据库打交道。
controller 通过调用service来完成业务逻辑。
我这里使用的是PostgreSql数据库,这个数据库是开源而且非常不错的。
(SpringBoot连接PostgreSql数据库:https://blog.csdn.net/qq_41647999/article/details/83311721 )
实例图片及源码
实例:
数据库:
运行效果:
下载地址
积分下载地址:https://download.csdn.net/download/qq_41647999/10739833
如果没有积分,百度云链接:https://pan.baidu.com/s/15UBAeg68mTIaQOy9ES7_Mw提取码:1uuo