【Java】POJO

2023-11-07

POJO(Plain Ordinary Java Object)

简单的Java对象
通指没有使用Entity Beans的普通java对象,可以把POJO作为支持业务逻辑的协助类。
POJO实质上可理解为简单的实体类,顾名思义,POJO类的作用是方便程序员使用数据库中的数据表,可以很方便地将POJO类当做对象来进行使用,当然也可以方便地调用其get、set方法。
一个POJO在持久化后就是PO,若直接用它传递,在传递过程中就是DTO,若直接用来对应表示层就是VO。

JavaBean

一种可重用组件,即“一次性编写,任何地方执行,任何地方重用”。
主要用途:可以用在功能、处理、值、数据库访问和JSP中任何可以用Java代码创造的对象。
满足三个条件:

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

PO(Persistent Object)

持久对象
PO的每个属性基本上都对应数据库表里面的某个字段,是一个完全符合Java Bean规范的纯Java对象,没有增加别的属性和方法。持久对象是由insert数据库而创建,由数据库delete而删除的,持久对象生命周期基本上和数据库密切相关。

VO(Value Object)

值对象
通常用于业务层之间的数据传递,和PO一样,也是仅仅包含数据而已,但VO是抽象出的业务对象,可根据业务的需要选择是否和表对应。

VO(View Object)

表现层对象
主要对应展示界面显示的数据对象,用一个VO对象来封装整个界面展示所需要的对象数据。

BO(Business Object)

业务对象
是封装业务逻辑的JAVA对象,通过调用DAO的方法,结合PO、VO进行业务操作。
例如一个简历,有教育经历、工作经历、社会关系等,可以把教育经历对应一个PO,工作经历对应一个PO,社会关系对应一个PO,建立一个对应简历的BO对象处理简历,每个BO包含这些PO,这样处理业务逻辑时就可以针对BO去处理。

DTO(Data Transfer Object)

数据传输对象
简单来说,当需要一个对象10个字段的内容,但这个对象总共有20个字段,就不需要把整个PO对象的全部字段传输到客户端,可以用DTO重新封装再传递到客户端,若这个对象此时用来对应界面的展现,则叫VO。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Java】POJO 的相关文章

随机推荐

  • min_faces_per_person=60 is too restrictive解决办法(人脸识别数据lfw_funneled)

    min faces per person 60 is too restrictive解决办法 在运行 faces fetch lfw people min faces per person 60 实例化 每个人需要60张图 这个代码时出现问
  • html 表格套表格_HTML表格

    html 表格套表格 A table is a set of rows and columns which could be created on a webpage in HTML by table tag The tabular rep
  • JAVA中的异常

    一 异常的分类 这是从jdk AP里简单摘出来 java中关于Exception和ERROR的一个关系 可以看出他们都来自于同一个父类Throwable Error java中的Error是比较严重的问题 非程序本身的问题 一般都是虚拟机相
  • Python tkinter Misc类+Wm类详解

    Misc类 这个类是模块中最基本的类 所有组件甚至是Tk都继承这个类 不过 组件并不直接继承这个类 而是继承Widget类 Widget类直接继承BaseWidget类 而BaseWidget类直接继承Misc 比较特殊的Toplevel继
  • 计算机二级高级应用教材,全国计算机等级考试教程 二级MS Office高级应用(教材)...

    全国计算机等级考试教程 二级MS Office高级应用 教材 依据教育部考试中心新颁布的全国计算机等级考试二级MS Office高级应用的考试大纲进行编写 全国计算机等级考试教程 二级MS Office高级应用 教材 以考点为主线 以 理论
  • Citesapace作图结果部分——文章整体思路简单分析

    Citespace相关论文 除了引言部分 一般从第二部分开始结合citespace作图软件进行分析 以下做一个该部分简要的概括 2 Materials and Methods 数据检索部分一般分为两部分 2 1 Data Collectio
  • 解决Python中的循环引用和内存泄漏问题

    在Python编程中 循环引用和内存泄漏是两个常见的问题 本文将详细介绍如何识别和解决这些问题 并提供详细的代码示例 1 什么是循环引用 循环引用是指两个或多个对象之间相互引用的情况 这种情况可能导致内存泄漏 因为Python的垃圾回收机制
  • 数据治理体系建设

    01 数据治理建设路径 1 业务数字化的目的是打造一体化的业务流 信息流与数据流 从企业整体经营管理的角度 战略制定及分解 领域业务目标制定 业务方案设计 业务需求识别 信息系统功能及数据库设计 数据汇聚及分析 业务目标监测及改善 这个过程
  • 图片在网页能打开,小程序上不显示的解决方法

    这种情况可能是图片被小程序自动加上了防盗链 导致显示不出来 解决方案 1 在img标签是上加属性 referrerPolicy no referrer
  • 使用VS Code打造Python编程与Markdown写作利器,打破知乎、WordPress和微信公众号的壁垒

    目录 1 前言 2 安装与环境搭建 2 1 VS Code安装 2 2 VS Code常用快捷键 2 3 打造Python编辑器 2 4 打造Markdown编辑器 3 一些技巧 3 1 更舒适的Python编程环境 3 2 Markdow
  • oracle数据库中选择桌面类和服务器类的区别

    在以前的学习过程中 一直用到的都是sql server数据库 之后接触到了oracle数据库 在安装过程中 有两个选项 桌面类和服务器类 当时按照网上的安装步骤 选择了桌面类 后来公司里他们安装都是用的服务器类 后来查了查两者的区别 桌面类
  • 【MyBatis】resultMap和resultType的区别

    mybatis中resultMap和resultType的区别 mybatis中在查询进行select映射的时候 返回类型可以用resultType 也可以用resultMap resultType是直接表示返回类型的 而resultMap
  • 使用jira的sprint面板进行敏捷开发——scrum master笔记(待完善)

    一 jira中sprint面板的创建 这个很简单 键入jira后 顶栏处找 面板 查看全部面板 此时页面右上侧有 创建面板 的按钮 点击 选择 创建一个Scrum面板 根据提示填信息到完成即可 二 jira中sprint面板的配置 点击进入
  • 如何清除win7系统中的开机密码

    设置系统的开机密码是很正常的事情 当然 忘记开机密码也是常有的事情 下面的方法是通过PE盘清除win7的卡机密码 首先 看一下我的电脑是有密码的 有密码的机器 二 PE盘的准备 我用的pe是we 这是我用过的最良心的PE环境 关于PE的安装
  • java查找算法:二分查找(两种方式)

    二分查找算法思想 二分查找针对的是一个有序的数据集合也就是数组 这也成为了二分查找的一个重要局限性 查找思想有点类似分治思想 每次都通过跟区间的中间元素对比 将待查找的区间缩小为之前的一半 直到找到要查找的元素 或者区间被缩小为0 一 返回
  • Cocos Creator 3D 梦想再起航!

    在 Cocos 不算长的生命历程中 我们曾多次尝试给开发者带来 3D 游戏的开发能力 2014 年 我们的 3D 团队开辟了 Cocos2d x 对 3D 的支持 至今已孵化出莉莉丝的 剑与家园 腾讯的 乱世王者 这样的超级大作 同时 Co
  • Skywalking web页面空白问题解决

    问题描述 今天微服务报错想用链路id追踪这个服务的流向 发现skywalking页面空白 查看后台进程发现skywalking oap server服务掉了 重启还是不行 tail n500 skywalking oap server lo
  • Python实现飞机大战游戏(后附完整代码文件和素材)

    前言 自学Python的记录 不喜勿喷 本程序的代码是以B站黑马程序员的视频代码为基础 个人加以总结思考 写就的博文 纯属记录自己的学习历程 当初想到要用Python的pygame模块开发飞机大战游戏的时候 顿时就兴奋了 毕竟学以致用是最好
  • 网络自动化运维(NetDevOps)创作者推荐

    前言 随着NetDevOps技术登上了历史舞台 越来越多的从业者开始利用NetDevOps简化网络的运维 并进行了技术分享 将蛋糕越做越大 在这里 仅代表个人对这些无私奉献的网络 运维工程师们表达由衷的敬意 此外 我也想向大家推荐一些我认识
  • 【Java】POJO

    POJO Plain Ordinary Java Object 简单的Java对象 通指没有使用Entity Beans的普通java对象 可以把POJO作为支持业务逻辑的协助类 POJO实质上可理解为简单的实体类 顾名思义 POJO类的作