Spring Boot中DAO层和Service层等理解
Spring Boot中DAO等层的理解
- 1 DAO层
- 2 Service层
- 3 Controller层
- 4 Entity层
- 5 View层
- 6 Utils层
- 总结
目前在公司实习python算法研究,但是个人对Spring Boot有较大兴趣。在刚开始学习过程中对其中的一些概念不是很清晰,故写个博客记录一下。下图是项目开发和业务逻辑设计的一般框架和流程图。
1 DAO层
DAO:Data Access Object(数据访问层),负责数据持久化工作。DAO层负责与数据库进行交互,封装对数据库的访问,涉及数据的增删改查处理(不涉及业务逻辑)。
2 Service层
Service:业务层,负责业务模块的逻辑应用设计。在项目的开发过程中一般先设计所需的业务接口类,之后再通过类来实现该接口(Java中接口可以多继承,而类不能),然后在Config文件中进行配置其实现的关联。之后就可以在Service层调用接口进行业务逻辑应用的处理。封装Service层的业务逻辑有利于业务逻辑的独立性和重复利用性。
3 Controller层
Controller:控制层,负责控制业务逻辑(例如登陆控制等具体的业务模块逻辑控制)。通常扮演负责控制处理Web前端发送的数据。Controller层主要调用Service层里面的接口控制具体的业务流程,控制的配置也需要在配置文件中进行。
[—注意—]
Conroller层和Service层的区别是:Controlle层负责具体的业务模块流程的控制;Service层负责业务模块的逻辑应用设计;
4 Entity层
Entity:实体层,数据库在项目中的类。放置一个个实体,及其相应的set、get方法。
Entity层中的类大多数是数据方面的,例如数据库中有负责登陆的User表(ID、UserName,Password),在Entity层就需要用private关键字定义与数据库中一样的字段(ID、UserName,Password)以及这些字段的get、set方法(方法可以Override)。
5 View层
View:通常指展示层,View层与控制层结合比较紧密,需要二者结合起来协同开发。View层主要负责前端页面的显示。
6 Utils层
Util是utiliy的缩写,是一个多功能、基于工具的包。如字符串处理、日期处理等,(建立数据库之间的连接),是通用的、与业务无关的,可以独立出来,可供其他项目使用。
总结
开发具体项目时,Controller层调用Service层的方法,Service层调用Dao层中的方法,其中调用的参数是使用Entity层进行传递的。
参考博客
1.https://blog.csdn.net/Restarting2019/article/details/122296373
2.https://www.cnblogs.com/yourjohn/p/15593686.html
Spring Boot中DAO层和Service层等理解相关推荐
- Spring Boot中声明式数据库事务使用与理解
JDBC的数据库事务 传统JDBC的数据库事务的一个示例如下代码所示,该示例仅为一个insertUser方法的数据库事务过程.可以看到,如果还存在很多其他的数据库事务需要,则需要编写很多类似于如下的代 ...
- Spring Boot骚操作-多数据源Service层封装
原文:https://www.pdai.tech/md/spring/springboot-data-multi.html mysql, es, mongodb 三个数据源用配置文件方式连接,JPA只 ...
- Entity层、DAO层、Service层、Controller层 先后顺序
写法顺序: 1.数据库表 2.实体层 3.DAO层写接口 4.Mapper层写和DAO层对应的映射规则,即SQL和POJO的映射规则.其中<select>元素定义的resultType指向 ...
- springboot异步注解_Spring Boot 2 :Spring Boot 中的响应式编程和 WebFlux 入门
[小宅按]Spring 5.0 中发布了重量级组件 Webflux,拉起了响应式编程的规模使用序幕. WebFlux 使用的场景是异步非阻塞的,使用 Webflux 作为系统解决方案,在大多数场景下可 ...
- (转)Spring Boot 2 (十):Spring Boot 中的响应式编程和 WebFlux 入门
http://www.ityouknow.com/springboot/2019/02/12/spring-boot-webflux.html Spring 5.0 中发布了重量级组件 Webflux ...
- Spring boot 三层框架dao层、service层、controller层+实体model层
Spring boot 三层框架dao层.service层.controller层+实体model层 model层 dao层 service层 controller层 首先创建一个springboot ...
- Spring、Mybatis整合Service优化思路,DAO层、Service层最终编码以及log4j日志的使用
5. Spring.Mybatis整合Service层事务控制优化思路分析 # spring中处理事务的两种方式1. 编程式事务处理定义:通过在业务层中注入事务管理器对象,然后通过编码的方式进行事务控 ...
- SSM框架中各层的含义和联系(Pojos层、Dao层、Service层、Action层......)
一.pojo层 即Plain Ordinary Java Object,也有人称其为model.domain.bean等,pojo层是对应的数据库表的实体类. 二.1.持久层:Dao层(Mapper) ...
- java的dao层_Java中Dao层、Action层、Service层、Controller层-Fun言
Action/Service/DAO简介 Action 管理业务(Service)调度和管理跳转 Service 具体的业务功能 Action只负责管理,而Service负责实施 DAO只完成增删改查 ...
最新文章
- opencv 操作本地摄像头实现录像
- 生产上如何设置线程池参数?拒绝策略怎么配?|| Executors 中 JDK 给你提供了,为什么不用??
- Hibernate一对多映射示例注释
- Caused by: org.apache.catalina.LifecycleException: A child container failed during start
- Mac OSX使用隐藏文件夹
- 精度、速度完美平衡,最新图像分割SOTA模型重磅发布!!!
- python soup提取叶子标签_使用Python爬虫库BeautifulSoup遍历文档树并对标签进行操作详解(新手必学)...
- 微信小程序获取用户头像昵称手机号最新版
- 网易云音乐打卡听歌300首源码
- 启动mysql错误解决方案
- python写cdr插件_CDR插件: YG辅助增强插件 完美支持Win3264位 CorelDRAW X4-2018 免费下载附详细图文教程...
- 大闹天宫 页游 架设教程 自玩 单机
- Springboot毕设项目大学生科技项目管理系统0zzjj(java+VUE+Mybatis+Maven+Mysql)
- 社团管理——原型设计
- 四舍五入VS银行家舍入 (四舍六入五取偶)
- 一幅漫画告诉你:NB-IoT背后,大家都在说的LoRa是啥?
- 手机为什么手机里的计算机没在桌面,为什么安卓手机锁屏后动态桌面就不见了?教你设置软件后台运行!...
- 我,阿里的程序员,工作5年,揭秘阿里员工的真实收入和工作经历
- Mac不休眠、恢复休眠的快捷设置
- elasticjob spring xml 代码分析
热门文章
- 什么是“ backupd”,为什么它在我的Mac上运行?
- 【2020 ACM Fellow 华人学者】 Wang Yi 乌普萨拉大学
- 借助iMazing工具重新安装或升级 iOS系统
- Orlens入门概念(4)Orleans 服务进程Silo
- 程序员为什么要学习数据结构与算法?
- 五行代码python 创建Excel(xls)文件以及数据写入
- 苹果6怎么截屏_这才是iPhone截屏的正确方法!快速截屏6到飞起!你还不知道?...
- 金蝶开k3wise客户端访问中间层不时提示远程服务器不存在或不可用
- 【愚公系列】2023年06月 网络安全(交通银行杯)-baby
- 设置linux工具支持中文: