
JAVA开发后端业务流程的小白介绍(springboot)
前端请求调用后端的controller请求数据,controller调用service请求处理结果,service调用mapper接口请求用来处理的数据库数据,mapper接口调用mapper.xml获取SQL数据库数据,
目录
(先叠甲)我只是介绍业务开发的一种模式,其他更好的模式我暂且不会
技术栈:springboot + MySQL + mybatis
总的来说就是5个步骤,需要从上到下按顺序新建,因为是从上到下的调用依赖关系,而且都是一对一的对应联系,就完成了整个的业务流程思路,后面会详细解释他们之间为什么是上下级
- 新建实体类Entity(数据库表对应)
- 新建控制器类EntityController(定义有那些url接口方法,直接与前端交流)
- 新建服务层类EntityService(上面controller接口方法的实现,并调用mapper数据库接口)
- 新建数据访问层接口类EntityMapper(定义访问数据库结果的方法)
- 新建XML配置文件EntityMapper.xml(SQL语句获得结果,直接与数据库表交流)
整个目录
- src里面是所有代码相关文件,target是打包文件,pom.xml是maven配置依赖文件
- com.example里面是所有java类
- SpringbootApplication是启动程序代码
- application是数据库连接、端口设置、日志配置等应用程序配置
- resource下面的mapper是mapper.xml
新建实体类entity
数据库的每个表都要有一个实体类对应,实体类的内容就是表的每个列属性,只要定义与表列相对应的数据类型,关联查询时如果需要返回新的数据名,也要在实体类定义(开发过程中回来添加实体属性很常见)
你可以理解为后端将要返回给前端的数据属性集合,比如res.data里包含多少属性,所以它是controller的上一级
所有属性定义后,就生成getter和setter方法,鼠标右键点击:
新建控制器controller
controller也就是定义url接口的地方,它接收前端的请求(带有参数)调用service方法根据这个参数获取结果返回给前端,所以它是service的上一级
前端访问的路径就是这里定义的,根据是GET,PUT,DELETE,POST等,具体细节要去学springboot注解的使用,
新建服务层service
service需要根据controller传入的参数“操作数据实现需求”——也就是所谓的服务,这个参数来自于前端的请求,service用于调用它更下一层的mapper数据库访问接口去获取SQL数据库结果,所以mapper是它的下一级
数据库访问方法mapper
这里的mapper只是定义了数据库访问方法名称,以及需要传入的参数,具体是什么接口是根据它的上一层service需要什么数据库结果而定的,比如service需要新增业务实现,那这里就要定义一个新增的数据库访问方法
这里也可以写SQL语句直接注解使用,但这样不方便管理
SQL数据库方法mapper.xml
mapper.xml就是真正直接访问数据库的地方,这里使用的是mybatis的SQL定义,最主要是可以动态SQL,这是最好用的。
我们回顾一下,根据最上层的前端请求,后端调用了controller获取请求参数调用service方法,service又调用mapper接口,mapper接口最终调用mapper.xml得到SQL数据库的结果,然后一直往上返回,最终给前端进行视觉呈现。
总结
至此,我终于对前后端交互有了整体的基础认识:
- 前端请求调用后端的controller请求数据
- controller调用service请求处理结果数据
- service调用mapper接口请求需要的数据库数据
- mapper接口调用mapper.xml获取SQL数据库数据
请求是从上到下的,但数据是从下到上的,根据前端请求的参数实现整个业务流程。
当然我的认识很浅显(自我认知),不足之处多多指教
更多推荐
所有评论(0)