1、VO:View Object 表现对象 / 值对象
【主要负责传输前端界面展示所需的数据;】
与PO对象一致,都是包含数据的对象而已,只不过该对象是用于与前端对接的。
【简单例子】我们数据库有username和age,但是前端只需要username,
这时候就需要一个新的对象,只用于与前端的数据传输,这个对象就叫做VO。
【为什么?】有人可能会问只用PO对象不就够了吗?其实这是根据业务的需求的,
这样子划分的主要目的是解耦合,方便开发,方便后续系统的维护和扩展。
但是也是有弊处的,每次对象都得从PO转VO,或者从VO转PO,这样子会很麻烦,
所以根据业务不同和项目的大小进行,如果是小项目,完全PO当做VO使用就可以了
2、DTO:Data Transfer Object 数据传输对象
【主要是用于展示层与服务层之间的数据传输对象;】
本质上就是一个包含数据的对象,
只不用用在服务层(controller)与展示层(service)之间。
3、BO:Business Object 业务对象
【封装业务逻辑的对象,可以包含多个其它PO对象;】
【简单例子】我们有用户表User,有订单表Order,
但是我们有个需求需要存放的数据是,某个用户的用户名,下单的订单号。
这时候我们就需要将两个PO对象,也就是User对象和Order对象结合起来,
而这个被我们结合起来的对象,就是BO对象,是业务需要,所以封装结合起来的对象。
【Java开发常识-缩写-02】什么是VO?什么是DTO?什么是BO?
最新推荐文章于 2024-12-07 20:11:42 发布