PO、BO、VO、DTO、POJO、DAO、DO 是在软件开发,尤其是基于 Java 的企业级应用开发中经常使用的对象模型设计概念。这些术语有助于组织代码、分离关注点以及实现不同层次间的职责分工。以下是它们各自的含义和用途:
PO (Persistent Object) - 持久化对象
- PO 代表与数据库表结构直接对应的实体对象,通常包含表中字段对应的属性以及相关的 getter 和 setter 方法,如常用的User类就是一个PO。
- 它主要用在数据访问层(DAO 层),用于封装从数据库读取的数据或准备写入数据库的数据。
- PO 不包含任何业务逻辑,仅作为数据载体,其属性通常与数据库字段一一对应,用于 ORM(对象关系映射)框架(如 Hibernate、MyBatis 等)进行数据库操作。
BO (Business Object) - 业务对象
- BO 负责封装业务逻辑,它可以包含多个 PO 或其他辅助对象,以实现特定业务功能或流程。
- BO 通常位于业务层(Service 层),它对业务规则、验证、计算等进行抽象,并对外提供统一的接口供上层调用。
- BO 有助于将复杂的业务逻辑与数据访问细节隔离,提高代码的可维护性和复用性。
VO (Value Object / View Object) - 值对象 / 表现层对象
- VO 用于在表现层(如 Web 页面、移动端界面)与服务层之间传递数据,通常只包含前端展示所需的数据和属性。
- VO 可能会忽略或简化一些数据库中的字段,也可能包含额外的计算结果或视图特定的状态信息,以适应前端展示的需求。
- VO 旨在减少传输数据量,保护敏感信息(如数据库结构),并简化前端对数据的处理。


1446

被折叠的 条评论
为什么被折叠?



