DO、BO、DTO、VO和POJO到底是什么?Java开发者必知必会

本文介绍了Java开发中常见的DO(DataObject)、BO(BusinessObject)、DTO(DataTransferObject)、VO(ViewObject)和POJO(PlainOrdinaryJavaObject)数据模型,以及他们在DAO、Service、Controller层的应用。这些模型根据业务场景选择合适的数据传递和处理方式。
摘要由CSDN通过智能技术生成

DO、BO、DTO、VO和POJO是Java开发中常用的几个概念。它们是用来描述不同层之间数据传输的数据模型,可以根据具体的业务场景选择合适的模型。

概念

首先定义一个DO类,用来映射数据库中的实体:

再定义一个BO类,用来封装业务逻辑:

接下来定义一个DTO类,用来传输数据:

再定义一个VO类,用来展示数据:

最后,定义一个POJO类:

  • DO(Data Object)是一个与数据库表结构对应的对象,也叫持久化对象。DO用来在DAO层和数据库进行交互,也可以在其他层使用,比如作为方法的参数或返回值。

  • BO(Business Object)是一个封装业务逻辑的对象。BO用来在Service层处理业务规则,比如校验、计算、转换等。BO可以包含一个或多个DO对象的信息,也可以不包含DO对象的信息。

  • DTO(Data Transfer Object)是一个用来传输数据的对象。DTO用来在不同层或不同系统之间传递数据,比如从Service层传递到Controller层或View层。DTO可以包含与视图相关的信息,也可以包含与业务相关的信息。

  • VO(View Object)是一个用来展示数据的对象。VO用来在View层表示视图模型,比如JSP、HTML等。VO可以包含与视图相关的信息,比如页面展示的数据、页面需要的样式等

  • POJO(Plain Ordinary Java Object)是一个普通的Java对象,它没有任何特殊的要求或约束,可以用来表示任何类型的数据。POJO通常是其他数据模型的基础,比如DO、DTO、BO、VO等。

  • 应用

    假设我们有一个用户管理系统,其中包含以下实体类:

  • UserDO:表示数据库中用户表的数据对象。

  • UserBO:表示业务对象,用于在service层中封装用户相关的业务逻辑,可以包含多个DO对象。

  • UserDTO:表示数据传输对象,用于在service和controller层之间传输数据。

  • UserVO:表示视图对象,用于在controller层向前端页面展示数据。

  • User:表示POJO对象,用于在不同层之间转换数据。

接下来演示如何在dao、service、controller层中使用。

DAO层

Service层

Controller层:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值