PO、VO、BO、DTO、DAO、POJO有什么区别?

PO(Persistent Object)持久化对象,主要用于和数据库交互,是数据库数据在内存中的镜像。

VO(View Object)视图对象,和前端展示强相关,按需组装前端需要的字段。

BO(Business Object)业务对象,封装业务逻辑,包含业务处理方法,是业务层专用,业务层只操作BO,不直接碰PO/DTO。

DTO(Data Transfer Object)数据传输对象,屏蔽底层 PO 结构,可细分 ReqDTO(请求)和 ResDTO(响应),用于跨层或者跨服务传输数据。

DAO(Data Access Object)数据访问对象,负责和数据库打交道,隔离业务逻辑和数据操作,依赖PO,通过操作PO完成与数据库的交互。

POJO(Plain Ordinary Java Object)简单Java对象,最基础的Java类。

PO/VO/BO/DTO 本质上都是 POJO。

常见的调用链路

前端请求 → Controller接收【ReqDTO】→ Service将ReqDTO转为【BO】→ BO调用【DAO】→ DAO操作【PO】与数据库交互 → Service将BO/PO转为【ResDTO/VO】→ Controller返回给前端

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1131474.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MYSQL_安装与配置(超详细,仅需一篇就能帮你成功安装MYSQL)

上一篇博客相信大家都已经了解到博主要讲那个数据库了,跟着博主的步伐一起来配置和安装数据库吧!!! **1.**使用Installer安装 1.1 下载最新版本Installer 官下载8.0.X的最新版本 ,址:https://dev.mysql.…

ArcGIS Pro3.5.2安装包+安装详细教程+系统需求

文章将包括系统安装需求说明软件包分享安装教程 先前版本请看: ArcGIS Pro稳定版 3.0.2 破解安装软件分享测试说明 ArcGIS Pro 3.1.5 破解安装软件分享测试说明 ArcGIS Pro3.3.2安装详细教程旧版本直接升级还是卸载旧版本再装? 一、系统安装需求升级…

【课程设计/毕业设计】基于 python的CNN深度学习的遥感图片识别沙漠湖泊和森林

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

MySQL进程CPU 飙升900%,领导让我查什么原因?

说一下问题:CPU飙升200% 以上是生产容易发生的场景场景:1:MySQL进程飙升900%大家在使用MySQL过程,想必都有遇到过CPU突然过高,或者达到200%以上的情况。数据库执行查询或数据修改操作时,系统需要消耗大量的CPU资源维护…

ArcGIS Pro查看多期数据变化!卷帘+多地图联动齐上架

之前介绍了ArcGIS效果工具条实现查看两期数据变化。 那么,如果在ArcGIS Pro中又该如何操作呢?ArcGIS Pro中其实有对应的卷帘效果与比较功能!一样可以把卷帘和透明度用起来。 多期数据源的加载查看: 2025年最新(全球&a…

Stream流式编程 中间操作和终端操作介绍

一、先立心智模型:Stream 到底是什么? Stream 不是集合,不存数据,不改数据。 它是: 对数据源的一次性、惰性的、函数式“处理流程描述” 三点必须刻在脑子里: 惰性执行:中间操作不执行&#x…

【苹果分级】基于matlab GUI机器视觉苹果质量检测及总分级系统【含Matlab源码 14878期】

💥💥💥💥💥💥💞💞💞💞💞💞💞💞欢迎来到海神之光博客之家💞💞💞&#x1f49…

【课程设计/毕业设计】基于深度学习的印刷体数字和字母识别基于python深度学习的印刷体数字和字母识别

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

深度学习计算机毕设之机器学习基于CNN深度学习的遥感图片识别沙漠湖泊和森林

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

ArcGIS土地利用现状图制作全流程

将之前《ArcGIS Pro从0到1制作广东省土地利用现状图》直播回重新录制一遍给大家学习。详见下方视频教学 主要涉及的内容包括:ArcGIS土地利用现状图全流程教学(从零数据下载、镶嵌、裁剪、属性表连接整理、面积区域汇总计算、地图全流程制作) …

Merge3D 三维引擎中 GeoJSON 数据加载的整体设计

你想分析Merge3D(融合引擎)三维引擎中GeoJSON数据加载的整体设计,并确认是否有一个统一的类来支持点、线、面等所有几何类型的GeoJSON数据加载。 Merge3D GeoJSON 加载核心实现原理 Merge3D 中 GeoJsonLayer 能一站式支持点、线、面&#xff…

K8S安装指南与核心操作命令汇总

在云原生时代,Kubernetes(简称K8S)已成为容器编排的事实标准,无论是企业级应用部署还是个人技术学习,掌握K8S的安装与基础操作都是必备技能。本文将从安装前置准备、具体安装步骤(以主流的kubeadm方式为例&…

企业知识管理新范式:用ChatWiki+大模型实现“一问即答“[必学收藏]

ChatWiki是一款企业级AI知识库构建平台,通过四步简单操作(接入AI模型、创建知识库、配置AI机器人、实现智能应答),将分散的企业文档转化为可对话的智能资产。它解决了知识孤岛、更新低效和交互割裂三大痛点,适用于新员…

15_嵌入式C与控制理论入门:控制算法的定点数优化与精度平衡

嵌入式C与控制理论入门:控制算法的定点数优化与精度平衡 做嵌入式控制开发的你,大概率遇到过这种窘境:精心设计的PID、模糊控制算法,在PC上用浮点数仿真时效果拉满,可移植到STM32、TI C2000等MCU后,要么运算速度慢到突破实时控制阈值,要么因MCU缺少浮点运算单元(FPU)导…

新下证美国外观专利:42款亚马逊侵权高危新品,跨境卖家立即自查!

2025 年 12 月 30 日,美国专利局集中公开了一批外观专利授权公告,涵盖家居用品、母婴玩具、宠物用品、电子设备等四大类43款产品。跨境卖家销售同款或近似款产品时,需警惕侵权风险。以下专利均于 2025 年 12 月 30 日正式授权,涵盖…

【毕业设计】python基于CNN深度学习的遥感图片识别沙漠湖泊和森林

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

Mysql 驱动程序

一、MySQL 驱动程序的概念 驱动程序的主要功能包括: 建立连接:驱动程序负责处理应用程序和 MySQL 数据库之间的网络连接。执行 SQL 语句:驱动程序将应用程序中的 SQL 语句发送到数据库服务器,并接收服务器的响应。处理结果集&am…

【值得收藏】Agent-Graph:构建强大多智能体系统的完整教程

Agent-Graph是基于上下文工程的多智能体系统,提供Agent管理、Workflow可视化编排、Subagent任务分解、双层记忆架构、MCP集成等核心功能。支持团队协作,可分享对话并导出为训练数据,适合构建复杂AI工作流。项目开源,提供完整文档和…

ArcGIS汉化不成功的解决方案

很多粉丝朋友在ArcGIS10.X系列安装出现了不能汉化的问题,即使是在装了汉化包的情况下。今天我们来做一个总结! (ArcGIS Pro汉化不成功查看:ArcGIS Pro或ArcGIS汉化不了?汉化包装不上?) ArcGIS的…

港美主流期货 API 接入全指南:TradingView 看盘策略

最近帮朋友搭建港美期货的自动交易系统,踩了不少 API 接入的坑——比如选 API 时没注意费率结构,初期测试没问题,跑实盘才发现手续费比预期高很多;还有接入时忽略了行情延时的问题,导致策略信号滞后。 索性整理一篇全…