Springboot中几个层的功能总结
具体的一个web项目中是:Controller层调用了Service层的具体功能方法,Service层调用Dao层的方法,其中调用的参数是使用Entity层进行传递的
下面我们来了解一下各个层的功能及作用:
- Service层:
业务层–>控制业务 ; service层的作用为完成功能设计; service层调用dao层接口,接收dao层返回的数据,完成项目的基本功能设计
业务模块的逻辑功能设计,和DAO层一样都是先设计接口,再创建要实现的类,然后在配置文件中进行配置其实现的关联。接下来就可以在service层调用接口进行业务逻辑应用的处理
优点:封装Service层的业务逻辑有利于业务逻辑的独立性和重复利用性
- Controller层:
控制层–>调用业务层方法来控制业务逻辑; controller层的功能为请求和响应控制; controller层负责前后端交互,接受前端请求,调用service层,接收service层返回的数据,最后返回具体的页面和数据到客户端
Controller和Service的区别是:Controller负责具体的业务模块流程的控制;Service层负责业务模块的逻辑应用设计
- Dao层:
持久层–>与数据库交互(也称Mapper层); dao层的作用为访问数据库,向数据库发送sql语句,完成数据的增删改查任务
Dao层首先会创建Dao接口,接着就可以在配置文件中定义该接口的实现类;然后就可以在模块中调用Dao的接口进行数据业务的处理,而不用关注此接口的具体实现类是哪一个类,Dao层的数据源和数据库连接的参数都是在配置文件中进行配置的
- Entity层:
实体层–>数据库在项目中的类(也称model层,pojo层);
主要用于定义与数据库对象应的属性,提供get/set方法,tostring方法,有参无参构造函数
Springboot中几个层的功能总结相关推荐
- springboot中对各个层的理解以及流程
springboot中对各个层的理解 1.entity层:实体层,数据库在项目中的类.也被称为model层,pojo层. 用于定义与数据库对象的属性,提供get/set方法,带参和无参的构造方法. 一 ...
- springboot中的各个模块及其功能
springboot中的各个模块及其功能:
- Springboot中实现文件上传功能
在springboot中实现上传功能更加简单,不需要再使用繁琐的io输入输出流,可直接使用相关工具类实现,具体代码如下: 第一步:在pom中引入hutool依赖 hutool官方提供了很多方便的工具, ...
- SpringBoot中如何灵活的实现接口数据的加解密功能?
数据是企业的第四张名片,企业级开发中少不了数据的加密传输,所以本文介绍下SpringBoot中接口数据加密.解密的方式. 本文目录 一.加密方案介绍二.实现原理三.实战四.测试五.踩到的坑 一.加密方 ...
- springboot 项目中在普通类中调用dao层的mapper 出现空指针异常
springboot 项目中在普通类中调用dao层的mapper 出现空指针异常 参考文章: (1)springboot 项目中在普通类中调用dao层的mapper 出现空指针异常 (2)https: ...
- SpringBoot中使用Easyexcel实现Excel导入导出功能(三)
导出的数据包含有图片 导出excel表格的数据包含有图片,这种场景比较少.通Easyexcel实现这样的需求,我认为最简便的方法就是使用前面提到的自定义转换器(com.alibaba.excel.co ...
- SpringBoot中使用Easyexcel实现Excel导入导出功能(一)
目录 前言 1.常规导入 2.读取到指定的列 3.读取全部的sheet页 4.日期.数字及其他自定义格式的转换 5.表头有多行的表格读取 6.表头数据的读取 7.单元格内的备注内容读取 前言 exce ...
- SpringBoot中Service层事务控制
SpringBoot中使用事务比较简单,在Application启动类上添加@EnableTransactionManagement注解,然后在service层的方法上添加@Transactional ...
- springboot中使用poi导出excel文件(亲测实现了第一个功能)
1.POI简介 Jakarta POI 是一套用于访问微软格式文档的Java API. 组件HWPF用于操作Word的; 组件HSSF用于操作Excel格式文件. 2.常用组件 HSSFWorkboo ...
最新文章
- 一个好的java博客
- java西游记壹_岩浆数码再现手机RPG游戏--西游记壹
- python播放在线音乐_Python实现在线音乐播放器
- dptcpp 题目 2352: [信息学奥赛一本通-T1440]数的划分-dp
- [html] websocket和http2有什么区别?http2能取代websocket吗?为什么?
- 轻量级 Java Web 服务框架漫谈
- koa如何实现Oauth2(一)
- php网址图片怎么转based4,Ionic4 Base64 转化成图片插件-Base64 转化成图片Base64 To Gallery - Ionic Native...
- python3 yum源_Redhat7.3更换CentOS7 yum源
- 未来教育计算机书,未来教育计算机二级
- MAC删除自带ABC输入法
- 回归分析中自变量取舍、检验及多重共线性处理(VIF)
- php公告滚动源码,如何利用JavaScriptjQuery实现滚动公告栏(代码实例)
- Justinmind恢复30天试用 For Mac
- iOS上栈溢出崩溃详解
- STM32 Cubemax(十一) ——JY901陀螺仪数据的读取与简单数据处理
- 未来的量子计算机算圆周率吗,圆周率的诡异现象,圆周率算尽了会怎么样
- SQLServer查询某天数据语法
- 中秋赏月地图出炉,跟随锦江之星去赏月
- java 开发服务器
热门文章
- thinkphp回调的php调用db类,请问thinkphp中model类自动完成功能 回调函数能不能获取其他字段的值?...
- java修改ldap用户密码_LDAP 用户更改自己的密码
- [转载] Linux里面的文件目录类指令
- mcq 队列_人工智能能力问答中的人工智能概率推理(MCQ)
- dbms_排名前50位的DBMS面试问答
- android分开两个线程做事,android开发教程之handle实现多线程和异步处理
- python淘宝cookies抢购_Python实现淘宝秒杀聚划算抢购自动提醒源码
- python 字符串函数 center_Python字符串处理
- date.gethour_Java LocalDateTime类| 带示例的getHour()方法
- 人工智能ai知识_人工智能中基于知识的代理层