最近在阿里手册的是突然看见PO,VO等名词发现自己还没有一个清晰的概念所以做了一些笔记。

我 给这些概念画了个关系图。

pojo 为了和EJB区分而生的。就是一个简单的java对象也就是在构建这个类的时候
你不能为他做任何限制,不能让他去继承,也不能让他去实现。

JavaBean 是一种JAVA语言写成的可重用组件。它的方法命名,构造及行为必须符合特定的约定:

1.这个类必须有一个公共的缺省构造函数。
    2.这个类的属性使用getter和setter来访问,其他方法遵从标准命名规范。
    3.这个类应是可序列化的。

因为这些要求主要是靠约定而不是靠实现接口,所以许多开发者把JavaBean看作遵从特定命名约定的POJO。
 
简而言之,当一个Pojo可序列化,有一个无参的构造函数,使用getter和setter方法来访问属性时,他就是一个JavaBean。

首先POJO可以有非getter,setter之外的其他方法。

当这个类被用来作数据展示他就是VO
当这个类被用来数据传输他就是DTO
当这个类被用来作为持久化的时候他就是PO

欢迎加 814859106交流学习。

POJO VO PO DTO 和JavaBean相关推荐

  1. 关于JAVA Bean实体类对象pojo,vo,po,dto,entity之间的区别

    关于JAVA Bean实体类对象pojo,vo,po,dto,entity之间的区别: Pojo: Pojo 普通的java对象 最基本的javaBean只有属性 加上属性的get,set方法,可以转 ...

  2. 关于java中文件命名POJO/VO/BO/DTO

    POJO POJO(Plain Ordinary Java Object),简单的Java对象,名字强调它是一个普通的java对象. POJO只有private属性以及这个属性的public的get和 ...

  3. VO,PO,DTO,BO的使用

    为什么有这么多的O? po 一般来说对应数据库实体. update语句中用的最多. dto dto数据层操作对象. 为什么要有dto呢? 举个简单的例子: createDate 是创建时间,现在要筛选 ...

  4. 分层架构使用DTO,VO,PO

    1.什么是DTO,VO,PO DTO : 业务层之间数据传输用的 VO : 前端页面请求对象,以及页面返回对象 数据的封装 PO : 数据库实体对象 2.MVC 架构中的使用 用户-->cont ...

  5. 领域模型命名规约【PO,VO,POJO,BO,DTO,DO,JavaBean】

    PO,VO,POJO,BO,DTO,DO,JavaBean 在这之前我先说一下,在阿里巴巴开发手册中有提到这种领域模型命名规约,即如下图: 下面是更加详细的介绍: po PO(Persistant O ...

  6. 什么是JavaBean、bean? 什么是POJO、PO、DTO、VO、BO ? 什么是EJB、EntityBean?

    前言: 在Java开发中经常遇到这些概念问题,有的可能理解混淆,有的可能理解不到位,特此花了很多时间理顺了这些概念.不过有些概念实际开发中并没有使用到,可能理解还不够准确,只能靠后续不断纠正了. 1. ...

  7. Java中PO、BO、VO、DTO、POJO、DAO概念及其作用和项目实例图(转)

    PO(bean.entity等命名): Persistant Object持久对象,数据库表中的记录在java对象中的显示状态 最形象的理解就是一个PO就是数据库中的一条记录. 好处是可以把一条记录作 ...

  8. java中PO、BO、VO、DTO、POJO、DAO是什么?

    [前面的话] 在和技术人员的交流中,各种专业术语会出现,每次都是默默的记录下出现的术语,然后再去网上查看是什么意思.最近做项目,需要使用到DTO,然后学习一下吧. 这篇文章是关于Java DTO的,选 ...

  9. PO VO BO DTO POJO DAO(转)

    2EE开发中大量的专业缩略语很是让人迷惑, 特别是对于刚毕业的新人来说更是摸不清头脑.若与公司大牛谈技术人家出口就是PO VO BO DTO POJO DAO 等,让新人们无比仰慕大牛. 为了让新人快 ...

最新文章

  1. python使用正则表达式寻找具有特定后缀的文件
  2. 重磅丨2018年中国人工智能行业研究报告(77页PPT)
  3. 为Office365增加密码过期自动提醒功能
  4. 中国SaaS死或生之二:ERP两大邪术,尽出歪门邪路
  5. MySQL设置表的字段值自动增加
  6. NYOJ 214 单调递增子序列(二)
  7. java float什么类型数据类型_Java中的Float和double数据类型
  8. C++查看各种数据类型所占字节和最大最小值(数据范围)
  9. java servlet 接收post_java 代码post表单数据到服务器,servlet接收处理
  10. 解决eclipse中mybatis的xml配置文件无代码提示问题
  11. JAVA大数据Week1习题
  12. 笑看 等什么君 简谱
  13. python太阳花画法_Python——教你画朵太阳花
  14. webview 支付宝、微信支付 QQ登录
  15. PCI总线的旧计算机,游戏卡成幻灯片 旧电脑升级显卡应该注意什么?
  16. Vue3的vue-router超详细使用
  17. Altium Designer 17 新手入门详细教程
  18. 《解压猫咪》用户隐私政策
  19. 6.4 GitHub - 管理组织
  20. Java开发笔记XML报文的解析

热门文章

  1. oracle amm和asmm,在Oracle中,什么是ASMM和AMM?
  2. Linux下ifconfig不显示ip地址问题总结
  3. 分枝PEI修饰的PLGA纳米粒/载柚皮素的牛血清白蛋白修饰PLGA纳米粒/包封香豆素-6的PLGA纳米粒
  4. 时空之轮Android手柄,经典角色扮演类游戏 Android时空之轮
  5. 检查计算机电源,台式机电源如何检测 电脑电源检测方法【详解】
  6. Python day13--网络编程
  7. matlab中计算运行时间的函数,【谁能都我一个计算时间的函数?是计算:例如上午08:00...-计算时间的函数-数学-伊凡渴同学...
  8. 郭炜-C语言程序设计-程序设计与算法(一)-第二周
  9. [Flutter] 用FontLoader从本地加载字体
  10. 关于使用通用mapper出现的错误