当前位置: 首页 > article >正文

详解前后端交互时PO,DTO,VO模型类的应用场景

前后端交互时的数据传输模型

前后端交互流程

前后端交互的流程: 前端与后端开发人员之间主要依据接口进行开发

  • 前端通过Http协议请求后端服务提供的接口
  • 后端服务的控制层Controller接收前端的请求
  • Contorller层调用Service层进行业务处理
  • Service层调用Dao持久层对数据持久化

PO,DTO,VO模型类

DTO(Data Transfer Object)数据传输对象: 用于接口层向业务层之间相互传输数据

PO(Persistent Object)持久化对象: 用于业务层与持久层之间相互传输数据,一个PO类对应数据库中的一张表,每张表对应一个Mapper接口和Mapper的xml映射文件

VO对象: 前端与接口层之间相互传输数据,当用户使用手机端和PC端查询课程信息时查询条件和查询结果可能不同

  • 手机查询: 根据课程状态查询,查询结果只有课程名称和课程状态
  • PC查询: 可以根据课程名称、课程状态、课程审核状态等条件查询,查询结果也比手机查询结果内容多
  • 如果前端接口没有多样性且比较固定,此时可以取消VO只用DTO即可

在这里插入图片描述

Service业务层尽量提供一个业务接口,即使两个前端接口接收的数据和响应的数据不一样

  • 查询条件不同: 此时可以设置多个VO对象
  • 查询结果不同: Service只负责提供一个最全的查询结果,由Controller层进行数据整合

在这里插入图片描述


http://www.kler.cn/news/150214.html

相关文章:

  • [论文阅读]CT3D——逐通道transformer改进3D目标检测
  • RK3568平台开发系列讲解(Linux系统篇)通过OF函数获取设备树节点实验
  • 云时空社会化商业 ERP 系统 service SQL 注入漏洞复现
  • mySQL踩坑记录
  • 【科技素养】蓝桥杯STEMA 科技素养组模拟练习试卷12
  • 从零构建属于自己的GPT系列1:文本数据预处理、文本数据tokenizer、逐行代码解读
  • SparkSQL远程调试(IDEA)
  • 深入了解Jackson库中的ObjectMapper:Java对象的序列化和反序列化
  • qt 简单了解QHBoxLayout QVBoxLayout QFormLayout水平,垂直,表单布局管理器.
  • BUUCTF刷题之路-pwn-ciscn_2019_n_81
  • Elasticsearch 聚合查询(Aggregation)详解
  • 虚拟机指定开放数据库3306端口
  • Golang开发之------ Beego框架
  • 异步操作的方法
  • genimage 打包镜像
  • ESP32-Web-Server编程- WebSocket 编程
  • leetcode二叉树
  • Spring Boot项目Service类单元测试自动生成
  • TikTok区块链实践:数字社交媒体的去中心化未来
  • 记录一次登录相关bug
  • Hive_last_value()
  • 解决QT信号在信号和槽连接前发出而导致槽函数未调用问题
  • 爬虫代理技术与构建本地代理池的实践
  • 亚马逊云科技向量数据库助力生成式AI成功落地实践探秘(二)
  • Java LeetCode篇-深入了解关于单链表的经典解法
  • Linux命令中的符号
  • 初学者如何入门深度学习:以手写数字字符识别为例看AI 的学习路径,一图胜千言!
  • 福德植保无人机:农业科技的新篇章
  • 小航助学题库蓝桥杯题库c++选拔赛(23年8月)(含题库教师学生账号)
  • 卷积神经网络(CNN)注意力检测