vo类,model类,dto类的作用及划分
1、entity里的每一个字段,与数据库相对应,
2、dto里的每一个字段,是和你前台页面相对应,
3、VO,这是用来转换从entity到dto,或者从dto到entity的中间的东西。
举个例子:
你的html页面上有三个字段,name,pass,age
你的数据库表里,有两个字段,name,pass(注意没有age哦)而你的dto里,就应该有下面三个(因为对应html页面上三个字段嘛)
private string name;
private string pass;
private string age;
这个时候,你的entity里,就应该有两个(因为对应数据库表中的2个字段嘛)
private string name;
private string pass;
到了这里,好了,业务经理让你做这样一个业务“年龄大于20的才能存入数据库”
这个时候,你就要用到vo了
你要先从页面上拿到dto,然后判断dto中的age是不是大于20,如果大于20,就把dto中的
name和pass拿出来,放到vo中,然后在把vo中的name和pass原封不懂的给entity,然后根据
entity的值,在传入数据库,这就是他们三个的区别
PS,VO和entity里面的字段应该是一样的,vo只是entity到dto,或者dto到entity的中间过程,如果没有这个过程,你仍然可以做到增删改查,这个就根据具体公司来的
vo类,model类,dto类的作用及划分的更多相关文章
- 实体类与实体DTO类之间的转换
实体类与实体DTO类之间的转换 实体类与实体DTO类之间的转换 1.通过使用第三方序列化反序列化工具Newtonsoft.Json 2.通过反射实现 3.通过表达式目录树加字典缓存实现 4. 通过表达 ...
- 实体类(VO,DO,DTO,PO)的划分《转载---》
转载自:https://blog.csdn.net/u010722643/article/details/61201899 经常会接触到VO,DO,DTO的概念,本文从领域建模中的实体划分和项目中的实 ...
- [转]实体类(VO,DO,DTO)的划分
原文地址:http://blog.sina.com.cn/s/blog_7a4cdec80100wkyh.html 经常会接触到VO,DO,DTO的概念,本文从领域建模中的实体划分和项目中的实际应用情 ...
- 实体类(VO,DO,DTO)的划分
实体类(VO,DO,DTO)的划分 (2011-12-21 15:50:27) 转载▼ 标签: it 经常会接触到VO,DO,DTO的概念,本文从领域建模中的实体划分和项目中的实际应用情况两个角度 ...
- 当实体类中entity/DTO/VO等类中,有枚举值,应该怎么输出?
当实体类中entity/DTO/VO等类中,有枚举值,应该怎么输出? 问题: orderStatus 和 payStatus都是枚举类,并且枚举的个数达地10来个,我们不可能在模板页面(jsp/ftl ...
- [转]java的(PO,VO,TO,BO,DAO,POJO)类名包名解释
java的(PO,VO,TO,BO,DAO,POJO)类名包名解释 2015-04-28 20:11 by Loull, 18 阅读, 0 评论, 收藏, 编辑 VO:值对象.视图对象 PO:持久对象 ...
- 转:C/C++中,空数组、空类、类中空数组的解析及其作用
转自:http://blog.sina.com.cn/s/blog_93b45b0f01015s95.html 我们经常会遇到这些问题: (1)C++中定义一个空类,他们它的大小(sizeof) 为多 ...
- C++类中的this指针的作用
1.我们知道C++的类成员函数中,默认都隐含了一个this指针,标识调用该成员函数的对象 2.为什么需要有一个this指针呢?C++设计这个机制的初衷是什么呢? 我们知道,普通的C++类,其成员函数是 ...
- PowerDesigner16.5物理数据表生成C#实体类Model
原文:PowerDesigner16.5物理数据表生成C#实体类Model 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/da454122373/a ...
随机推荐
- Elastic Stack-Elasticsearch使用介绍(二)
一.前言 写博客,更要努力写博客! 二.Mapping介绍 Mapping类似于数据库中的表结构的定义:这里我们试想一下表结构定义需要那些: 1.字段和字段类型,在Elasticsearch中 ...
- VS2019 实用操作
本文列出了在编写程序过程中的几个非常实用的操作方式,通过这些操作方式,可以在一定程度上减少重复操作.提高编码效率.改善编程体验. 列模式操作 列操作是一项很常用且实用的功能,可以一次性修改不同的行. ...
- MRP没生成MRP汇总表
设置:工作日历延长
- python 字典用法
d = {key1 : value1, key2 : value2 } 1.创建 dict1 = { 'abc': 456 } 2.访问/修改 dict['Name'] 3.删除 del dict[' ...
- 前端js日期时间格式转换
前端前后端接口处理时经常会遇到需要转换不同时间格式的情况,比如时间戳格式转换成正常日期显示来进行前端展示. 下面是分享一些不同格式的日期转换函数方法. /** * 时间戳转时间 * @param {S ...
- P1417 烹调方案 (0/1背包+贪心)
题目背景 由于你的帮助,火星只遭受了最小的损失.但gw懒得重建家园了,就造了一艘飞船飞向遥远的earth星.不过飞船飞到一半,gw发现了一个很严重的问题:肚子饿了~ gw还是会做饭的,于是拿出了储藏的 ...
- macos + vs code + grep 进行多文件搜索
macos下,打开vs code后,选择view菜单,点击terminal, 在vs code中打开控制台.执行以下grep命令: grep -w "p" -n -r /User ...
- Spring事务管理——基础会用篇
之前说到Spring的事务管理 一直很懵逼 ,只知道事务管理大概是干嘛的. 网上的博客都是用 银行转账来解释 事务管理,哈哈哈 那我也用这个吧,这个例子的确是最好的. 说是两个人相互转账,A转500块 ...
- SAM求多个串的最长公共子串
又学到一个\(SAM\)的新套路QvQ 思路 考虑用其中的一个串建个\(SAM\),然后用其他的串在上面匹配,匹配时更新答案 首先有一个全局变量\(len\),表示当前已匹配的长度.假设目前在点\(u ...
- appache 在windows 中无法启动的测试
使用phpstudy刚启动就自动停止,排除端口被占用后,总感觉找不到好的调试方法 网上找了一些资料,这个方法不错,所以就记录了下来.最好的办法是找appache的bin目录,打开运行,输入httpd. ...