一、VO、DTO、DO、PO

概念:
VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来
DTO:(Data Transfer Object):数据传输对象,泛指用于展示层与服务层之间的数据传输对象
DO:Domain Object):领域对象,就是从现实世界中抽象出来的有形或无形的业务实体。
PO:(Persistent Object):持久化对象,它跟持久层(通常是关系型数据库)的数据结构形成一一对应的映射关系,如果持久层是关系型数据库,那么,数据表中的每个字段(或若干个)就对应PO的一个(或若干个)属性。
关系:
l 用户发出请求(可能是填写表单),表单的数据在展示层被匹配为VO。

l 展示层把VO转换为服务层对应方法所要求的DTO,传送给服务层。

l 服务层首先根据DTO的数据构造(或重建)一个DO,调用DO的业务方法完成具体业务。

l 服务层把DO转换为持久层对应的PO(可以使用ORM工具,也可以不用),调用持久层的持久化方法,把PO传递给它,完成持久化操作。

l 对于一个逆向操作,如读取数据,也是用类似的方式转换和传递,略。

Java开发中的一些概念相关推荐

  1. web开发中常用的概念

    Tomcat服务器 Web开发中的常见概念 B/S系统和C/S系统 Brower/Server:浏览器 服务器 系统 ----- 网站 Client/Server:客户端 服务器 系统 ----- Q ...

  2. Java开发中更多常见的危险信号

    在< Java开发中的常见危险信号>一文中,我研究了一些不一定本身就是错误或不正确的做法,但它们可能表明存在更大的问题. 这些"红色标记"类似于"代码气味&q ...

  3. Java开发中的常见危险信号

    在开发,阅读,复审和维护成千上万行Java代码的几年中,我已经习惯于看到Java代码中的某些" 危险信号 ",这些信号通常(但可能并非总是)暗示着代码问题. 我不是在谈论总是错误的 ...

  4. 初学者Web介绍一些前端开发中的基本概念用到的技术

    Web开发是比较费神的,需要掌握很多很多的东西,特别是从事前端开发的朋友,需要通十行才行.今天,本文向初学者介绍一些Web开发中的基本概念和用到的技术,从A到Z总共26项,每项对应一个概念或者技术. ...

  5. Web开发中的主要概念

    一.Web开发中的主要概念 1.静态资源:一成不变的.html.js.css 2.动态资源:JavaWeb.输出或产生静态资源.(用户用浏览器看到的页面永远都是静态资源) 3.JavaEE:十三种技术 ...

  6. Java开发中常见的危险信号

    Dustin Marx是一位专业软件开发者,从业已经有17年的时间,他拥有电子工程学士学位,还是一位MBA.Dustin维护着一个博客,专门介绍软件开发的各个主题.近日,他撰文谈到了Java开发中常见 ...

  7. Java开发中经常使用到的几种WebService技术实现方案

    Java开发中经常使用到的几种WebService技术实现方案 随着异构系统互联需求的不断增加,WebService的重要性也日益彰显出来.凭借webservice,我们可以实现基于不同程序语言的项目 ...

  8. day01--java基础编程:计算机基础知识 ,java语言概述,java开发环境搭建,eclipse概述,创建简单java项目,JDK JRE JVM的关系,java开发中的命名规范,编程风格

    1 Day01–Java开发环境+HelloWorld 1.1 计算机基础知识 资料下载网址:刘沛霞 18600949004 code.tarena.com.cn tarenacode code_20 ...

  9. Java开发中RestFul服务接口规范

    REST介绍 representational State Transfer (REST) 是一种架构原则,其中将 web 服务视为资源,可以由其 URL 唯一标识.RESTful Web 服务的关键 ...

  10. java开发中遇到的问题及解决方法(持续更新)

    java开发中遇到的问题及解决方法(持续更新) 参考文章: (1)java开发中遇到的问题及解决方法(持续更新) (2)https://www.cnblogs.com/LiuYanYGZ/p/6112 ...

最新文章

  1. word2vec应用场景_Embedding在腾讯应用宝的推荐实践
  2. docker 部署 nginx
  3. linux sftp自动输入密码,使用autoexpect避免sftp输入密码
  4. tcpdump使用实例——基于ip统计流量
  5. Radware为夏威夷电信公司全新的DDoS攻击缓解服务提供支持
  6. id int primary key auto_increment是什么意思
  7. python autoit获取网页ajax数据_WebDriver + Python 调用AutoIt例子(实现139邮箱写信页的附件上传)...
  8. Django:静态文件staticfiles
  9. Silverlight 结合WCF Duplex Service聊天程序出炉
  10. reactos操作系统实现 1
  11. java 正则表达式验证
  12. java中length和length()的区别
  13. jieba分词库、WordCloud词云库、requests库
  14. 《商业数据分析》读书笔记(一)
  15. html 状态栏显示,网页屏蔽状态栏 打开的网页怎么隐藏浏览器的状态栏
  16. 知乎-产品经理观后总结
  17. ik做尾巴摆动 maya_maya跟随运动学教程(尾巴跟随)
  18. OC语言基础内容 类的定义 第一个OC
  19. 手把手教你学习IEC104协议和编程实现六 遥测与遥信帧的几种类型.
  20. Cell index must be >= 0

热门文章

  1. JavaScript表单编程
  2. 宝宝的成长脚印8/27
  3. Windows Phone 的主题
  4. IBM公布未来5年将改变人类生活的五大科技
  5. 拓端tecdat|R语言使用Bass模型进行手机市场产品周期预测
  6. 拓端tecdat|数据解锁职场女性潜力
  7. 拓端tecdat|R语言数据的收益率和可能的波动性交易
  8. linux硬盘打开ncq,linux下如何开启ncq
  9. hibernate教程笔记2
  10. 【Python】functools.lru_cache加快递归速度