(转)vo、po、dto、bo、pojo、entity、mode如何区分

2024-05-24 10:48
文章标签 po mode 区分 entity pojo vo bo dto

本文主要是介绍(转)vo、po、dto、bo、pojo、entity、mode如何区分,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【原文连接:https://www.wukong.com/answer/6535030067171442948/?iid=28069560333&app=news_article&share_ansid=6535030067171442948&wxshare_count=1&tt_from=weixin&utm_source=weixin&utm_medium=toutiao_android&utm_campaign=client_share】

Java Bean:一种可重用组件,即“一次编写,任何地方执行,任何地方重用”。满足三个条件

  • 类必须是具体的和公共的
  • 具有无参构造器
  • 提供一致性设计模式的公共方法将内部域或暴露成员属性

VO

value object:值对象 
通常用于业务层之间的数据传递,由new创建,由GC回收 
和PO一样也是仅仅包含数据而已,但应是抽象出的业务对象,可以和表对应,也可以不是

PO

persistant object:持久层对象 
是ORM(Objevt Relational Mapping)框架中Entity,PO属性和数据库中表的字段形成一一对应关系 
VO和PO,都是属性加上属性的get和set方法;表面看没什么不同,但代表的含义是完全不同的

DTO

data transfer object:数据传输对象 
是一种设计模式之间传输数据的软件应用系统,数据传输目标往往是数据访问对象从数据库中检索数据 
数据传输对象与数据交互对象或数据访问对象之间的差异是一个以不具任何行为除了存储和检索的数据(访问和存取器) 
简而言之,就是接口之间传递的数据封装 
表里面有十几个字段:id,name,gender(M/F),age…… 
页面需要展示三个字段:name,gender(男/女),age 
DTO由此产生,一是能提高数据传输的速度(减少了传输字段),二能隐藏后端表结构 
DTO

BO

business object:业务对象 
BO把业务逻辑封转为一个对象,通过调用DAO方法,结合PO或VO进行业务操作 
PO组合,如投保人是一个PO,被保险人是一个PO,险种信息是一个PO等等,他们组合气来是第一张保单的BO

POJO

plian ordinary java object:简单无规则java对象 
纯的传统意义的java对象,最基本的Java Bean只有属性加上属性的get和set方法

可以额转化为PO、DTO、VO;比如POJO在传输过程中就是DTO

DAO

data access object:数据访问对象 
是sun的一个标准j2ee设计模式,这个模式中有个接口就是DAO,负责持久层的操作 
主要用来封装对数据的访问,注意,是对数据的访问,不是对数据库的访问 
DAO对数据的访问

其他的还有model/module/domain/entity

Entity

实体,和PO的功能类似,和数据表一一对应,一个实体一张表

 

这篇关于(转)vo、po、dto、bo、pojo、entity、mode如何区分的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/998189

相关文章

Caused by: org.hibernate.MappingException: Could not determine type for: org.cgh.ssh.pojo.GoodsType,

MappingException:这个主要是类映射上的异常,Could not determine type for: org.cgh.ssh.pojo.GoodsType,这句话表示GoodsType这个类没有被映射到

Unstructured cannot write mode RGBA as JPEG 错误解决

Unstructured cannot write mode RGBA as JPEG 错误解决 0. 错误详细1. 解决方法 0. 错误详细 Image Extraction Error: Skipping the failed imageTraceback (most recent call last):File "/root/miniconda3/envs/learn-y

DTO类实现Serializable接口的重要性

所谓序列化,简单一点理解,就是将对象转换成字节数组,反序列化是将字节数组恢复为对象。凡是要在网络上传输的对象、要写入文件的对象、要保存到数据库中的对象都要进行序列化。Java对象是无法直接保存到文件中,或是存入数据库中的。如果要保存到文件中,或是存入数据库中,就要将对象序列化,即转换为字节数组才能保存到文件中或是数据库中。文件或者数据库中的字节数组拿出来之后要转换为对象才能被我们识别,即反序列化。

MySQL表名区分大小写设置

打开 mysql配置文件mysqld.cnf 打开文件,找到[mysqld]在下面增加一行 lower_case_table_names=0 (0:大小写敏感;1:大小写不敏感) 重启mysql服务 docker restart mysqlserver

Circuit Design 贴片晶振的区分

贴片晶振脚位的区分(非常详细,尤其是如何区分四脚的有源无源晶振): http://ruitairt.com/Article/tiepian_1.html 如何区分有源和无源晶振: http://ruitairt.com/Article/yzjddbfqsq_1.html

回归预测 | Matlab基于贝叶斯算法优化XGBoost(BO-XGBoost/Bayes-XGBoost)的数据回归预测+交叉验证

回归预测 | Matlab基于贝叶斯算法优化XGBoost(BO-XGBoost/Bayes-XGBoost)的数据回归预测+交叉验证 目录 回归预测 | Matlab基于贝叶斯算法优化XGBoost(BO-XGBoost/Bayes-XGBoost)的数据回归预测+交叉验证效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现基于贝叶斯算法优化X

混合模式属性background-blend-mode

background-blend-mode 是 CSS 中的一个属性,它允许你将背景图像与背景颜色或背景图像之间以一种特定的混合模式进行混合。这个属性为网页设计师提供了一种强大的方式来创建视觉上吸引人的背景效果,无需使用图像编辑软件或额外的图像文件。 background-blend-mode 可以应用于单个背景图像与背景颜色之间,或者当设置多个背景图像时,应用于这些图像之间。混合模式包括了许多

Redis 命令不区分大小写,键值区分大小写Redis

今天才知道   Redis 命令不区分大小写   但键值区分大小写的

计算两个字符串的最大公共字符串的长度,字符不区分大小写

/*** */package testString;import java.util.Scanner;/***@author: Administrator*@date: 2016-12-28 下午01:08:30*/public class Main {public static void main(String[] args){Scanner sc=new Scanner(Syste

区分变压器损耗

磁芯损耗 铁芯损耗分为两类:涡流损耗和磁滞损耗。 磁滞损耗 当没有次级电流流动时,流过变压器初级绕组的电流会产生磁通量,从而在次级绕组中感应出电压。该初级电流称为励磁电流,由于初级绕组的 CEMF 较大,因此相当小。由于变压器是通过磁通量传输能量的设备,因此集中磁通量可提高变压器的效率。 初级绕组的磁通量缠绕在称为磁芯的铁或钢材料上,以集中磁通量。磁芯材料为磁通量提供了比露天更好的路径。磁