java vo转map_三分钟掌握POJO及其转换——PO、DO、DTO、VO
三分钟掌握POJO及其转换——PO、DO、DTO、VOmp.weixin.qq.com
概念
DTO(Data Transfer Object)
数据传输对象,原先是为分布式提供粗粒度的数据实体,减少调用次数来提升性能和降低网络压力。
VO(view object)可视层对象,用于给前端显示的对象。(只传递有需要的参数以保障数据安全)
DO(Domain Object):
领域对象,一般和数据中的表结构对应。
PO(Persistent Object):持久化对象,是一种 o/r 映射关系,可以看成是数据库表到java对象的映射。
概括
DTO:前端给后端传递的数据
VO:后端给前端传递的数据
DO:数据库表结构
PO:数据库表结构到JAVA的映射类
一般我们使用Mybatis建的类为PO,控制器接受到前端发来的参数为DTO,给前端发送的安全的数据为VO。如果数据类不做映射处理关系时PO=DO
如何转换
maven导入net.sf.dozer(最新jar包可自行百度)
<!-- https://mvnrepository.com/artifact/net.sf.dozer/dozer -->
<dependency><groupId>net.sf.dozer</groupId><artifactId>dozer</artifactId><version>5.5.1</version>
</dependency>
使用方式如下
//(如果属性名不一致,需要注入映射配置文件的Bean。)
DozerBeanMapper mapper = new DozerBeanMapper();
B b = new B();
A a = mapper.map(b,A.class);
DO与PO的区别
DO为数据库表结构完全一致的对象
PO是数据库表映射后的对象
如:一个实体类里有订单表信息也有库存表信息
存储关联后的所有数据为PO。(一对多)
如:业务表中属性特别多,但只想取其中的几列查询
取出所需的数据为PO。(多对一)
如:表字段名称与代码使用不一致
映射成PO。
java vo转map_三分钟掌握POJO及其转换——PO、DO、DTO、VO相关推荐
- java和python的比较-如何对比Python和Java,只需三分钟告诉你!
原标题:如何对比Python和Java,只需三分钟告诉你! Java和Python两门语言都是目前非常热门的语言,可谓北乔峰南慕容,二者不分上下,棋逢对手.但是对于初学者来说,非常困惑,因为时间和精力 ...
- java do po dto_彻底搞懂DAO,PO,BO,DTO,VO,DO
原标题:彻底搞懂DAO,PO,BO,DTO,VO,DO 有干货,就分享,点上面的蓝字"测试之道"关注. 上才艺,哦不,上图... Entity 最常用实体类,基本和数据表一一对应, ...
- java实体类中有枚举类型_当实体类中entity/DTO/VO等类中,有枚举值,应该怎么输出?...
当实体类中entity/DTO/VO等类中,有枚举值,应该怎么输出? 问题: orderStatus 和 payStatus都是枚举类,并且枚举的个数达地10来个,我们不可能在模板页面(jsp/ftl ...
- DAO PO BO DTO VO DO的区别
Entity 最常用实体类,基本和数据表一一对应,一张表一个实体. DAO(Data Access Object):数据访问对象 是sun公司的一个标准j2ee设计模式的接口之一,负责持久层的操作.D ...
- Java开发工程师面试三分钟自我介绍
大家好,我是一名Java开发工程师,拥有三年的工作经验.在这三年里,我主要负责后端开发工作,熟练使用Java.Spring框架等技术.此外,我也积极学习新技术,并在实际项目中运用.我认为自己具有良好的 ...
- tomcat 启动需要java环境吗?_三分钟教你Windows环境下,如何设置Tomcat随机自动启动?...
一:确保tomcat 在点击binstartup 文件可以正常启动访问: 二:本机安装有JDK: 三:本机环境变量配置:JAVA_HOME:C:Javajdk1.7.0_17; 四:本机Tomcat环 ...
- PO/DO/DTO/VO/BO/POJO/DAO解释
1.PO(persistant object) 持久对象 PO 就是对应数据库中某个表中的一条记录,多个记录可以用 PO 的集合.PO 中应该不包 含任何对数据库的操作. 2.DO(Domain Ob ...
- 三分钟熟悉进制转换与位运算
微信搜索[NO编程],关注这个不一样的公众号. 个人网站:www.newobject.cc 版权声明:本文为原创文章,转载请注明出处. 进制和位运算简介 进制也叫进位制,是一种记数方法,也称进位计数法 ...
- java中po_Java中PO,DO,DTO,VO的概念
1.VO(View Object): 视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来. 2.DTO(Data Transfer Object): 数据传输对象,这个概念来源 ...
最新文章
- 《机器学习与数据科学(基于R的统计学习方法)》——2.11 R中的SQL等价表述...
- Delphi - 新语法介绍之For In
- 在虚拟机中快速安装 Ubuntu 18.04
- JS 搜索 --下拉列表
- 小明系列问题――小明序列(LIS)
- Redis工作笔记-事务
- CSS学习笔记--CSS语法与选择器
- mtr和nmap命令
- 离散信号频谱matlab代码,离散信号MATLAB频谱分析程序
- homework-06
- C语言:求矩阵非对角线元素的和
- Atitit 项目分析与统计目录1. 静态分析+动态分析 。其中, 12. 模块分析,与模块位置idx 13. 编程语言类型与版本 13.1. 类库统记表 类型与版本 23.2. 中间
- icarus主题的博客加载太慢
- 基于单片机的温湿度监测报警
- 百度云虚拟机访问项目404
- GOOGLE地图基站定位-Google Mobile Maps API
- java输出数组(java输出数组)
- 【C++】Placement New
- python 多任务
- python安装报_ssl问题
热门文章
- mysql configuration_MySQL Configuration 教程
- Spring Boot 缓存应用实践
- Nginx 一个牛 X 的功能,流量拷贝!
- 应用监控指标采集器 Prometheus 核心介绍
- crm系统是什么很棒ec实力_CRM系统都有哪些功能?CRM管理系统的主要用途又是什么?...
- Focal Loss升级 E-Focal Loss让Focal Loss动态化,类别极端不平衡也得到提升
- yolov5组件笔记
- 目标检测 yolov1
- Transformer LambdaNetworks
- 人脸关键点 HRNet-Facial-Landmark-Detection