项目开始之前需要搞懂的几个概念POJO、PO、DTO、DAO、BO、VO
POJO
全称为:Plain Ordinary Java Object,即简单普通的java对象。一般用在数据层映射到数据库表的类,类的属性与表字段一一对应。
PO
全称为:Persistant Object,即持久化对象。可以理解为数据库中的一条数据即一个BO对象,也可以理解为POJO经过持久化后的对象。
DTO
全称为:Data Transfer Object,即数据传输对象。一般用于向数据层外围提供仅需的数据,如查询一个表有50个字段,界面或服务只需要用到其中的某些字段,DTO就包装出去的对象。可用于隐藏数据层字段定义,也可以提高系统性能,减少不必要字段的传输损耗。
DAO
全称为:Data Access Object,即数据访问对象。就是一般所说的DAO层,用于连接数据库与外层之间的桥梁,并且持久化数据层对象。
BO
全称为:Business Object,即业务对象。一般用在业务层,当业务比较复杂,用到比较多的业务对象时,可用BO类组合封装所有的对象一并传递。
VO
全称为:Value Object,有的也称为View Object,即值对象或页面对象。一般用于web层向view层封装并提供需要展现的数据。
项目开始之前需要搞懂的几个概念POJO、PO、DTO、DAO、BO、VO相关推荐
- 干货丨先搞懂这八大基础概念,再谈机器学习入门
翻译 | AI科技大本营 参与 | 林椿眄 准备好开始AI了吗?可能你已经开始了在机器学习领域的实践学习,但是依然想要扩展你的知识并进一步了解那些你听过却没有时间了解的话题. 这些机器学习的专业术语能 ...
- 这个外挂要上天了!教一千遍都不会的数理技巧,还不如搞懂最根本的概念!
▲ 点击查看 数理化的学习对于很多孩子,包括家长都是一个大难题. 比如,我们要教孩子认识动物,一般是要给孩子看动物的图片或实体,孩子自然就对这个动物有个认知. 要教孩子数字,就会用一件玩具.两个苹果这 ...
- 先搞懂这八大基础概念,再谈机器学习入门!
翻译 | AI科技大本营 参与 | 林椿眄 准备好开始AI了吗?可能你已经开始了在机器学习领域的实践学习,但是依然想要扩展你的知识并进一步了解那些你听过却没有时间了解的话题. 这些机器学习的专业术语能 ...
- 【机器学习】先搞懂这八大基础概念,再谈机器学习入门!
准备好开始AI了吗?可能你已经开始了在机器学习领域的实践学习,但是依然想要扩展你的知识并进一步了解那些你听过却没有时间了解的话题. 这些机器学习的专业术语能够简要地介绍最重要的机器学习概念-包括商业界 ...
- 一文搞懂常用的网络概念:域名、动态IP、DNS、DDNS
人呐,眼光放得长远一些,看到的东西也会多一些,生活也就会过得更有意义一点. 本文已被https://yourbatman.cn收录:女娲Knife-Initializr工程可公开访问啦:程序员专用网盘 ...
- 彻底搞懂硬盘相关的概念
以下内容源于网络资源的学习与整理,如有侵权请告知删除. 参考博客 硬盘结构(机械硬盘和固态硬盘)详解 简单理解磁盘结构_Guanngxu的博客-CSDN博客_磁盘的结构 硬盘基础知识_Forskams ...
- 如何彻底搞懂TDengine的fqdn概念?这一篇文章就够了
小T导读:很多新用户在配置TDengine的时候,偶尔会因为没有配置好FQDN,导致出现"unable to resolve FQDN"问题.所以大家会因为这个问题向TDengin ...
- layer output 激活函数_一文彻底搞懂BP算法:原理推导+数据演示+项目实战(下篇)...
在"一文彻底搞懂BP算法:原理推导+数据演示+项目实战(上篇)"中我们详细介绍了BP算法的原理和推导过程,并且用实际的数据进行了计算演练.在下篇中,我们将自己实现BP算法(不使用第 ...
- IntelliJ IDEA 部署 Web 项目,终于搞懂了!
IntelliJ IDEA 部署 Web 项目,终于搞懂了! 这篇牛逼:Java 程序员必备的 Intellij IDEA 插件 IDEA 中最重要的各种设置项,就是这个 Project Struct ...
- 一文彻底搞懂BP算法:原理推导+数据演示+项目实战(下篇)
在"一文彻底搞懂BP算法:原理推导+数据演示+项目实战(上篇)"中我们详细介绍了BP算法的原理和推导过程,并且用实际的数据进行了计算演练.在下篇中,我们将自己实现BP算法(不使用第 ...
最新文章
- linux tomcat端口冲突解决
- SQL自定义函数split分隔字符串
- 在 JavaFX 中,如何计算文本所占像素的宽度
- 【安卓开发 】Android初级开发(九)Android中封装View提供接口供点击事件回调的方法及使用
- 【转】DELPHI 对DICOM中的窗宽、窗位调整
- MariaDB 10 Slave Crash-Safe需转为GTID复制模式
- qt5.4 for android,windows下Qt5.4.2 for android开发环境配置
- 【Bug】解决 java.sql.SQLSyntaxErrorException 异常
- tempdb 数据文件暴涨
- 优秀!5部顶级数学纪录片,假期看剧涨知识必备!
- Python3网络爬虫(三):漫画下载,动态加载、反爬虫这都不叫事!
- 全志V3s 荔枝派WiFi RTL8723BS 连接
- 月销10w支!不用洗牙,牙齿也能白到发光!买它,这支黑科技美白电动牙刷
- Android变声(SoundTouch)
- 07-小蜜蜂单片机中断系统
- 数组 保存学生的成绩
- 时间序列完全教程(R)
- 手动实现表格分页功能
- 利用VBA代码解决Excel下拉菜单跳过空单元格的问题
- OLE技术及组件对象模型(COM)
热门文章
- 并发队列中迭代器弱一致性原理探究
- elementui的横向滚动,element-ui中隐藏组件el-scrollbar的使用
- Android 开发横屏App或创建横屏布局
- 我们该如何选择适合自己的编程语言呢?
- linux下virtualbox安装win7虚拟机无法调整分辨率
- allure的安装使用以及报告的生成
- git输入 ssh-keygen -t rsa 后只显示Generating public/private rsa key pair. 然后就直接跳出了
- JAVA重写和重载的区别
- SQL Server索引 - 聚集索引、非聚集索引、非聚集唯一索引 第八篇
- 在spyder怎么升级_怎么更新spyder?