PO(Persistent Object):
- PO 主要用于表示与数据库表或文档一一对应的对象。
- 它通常包含与数据库表中的列一一对应的属性,用于与数据库层进行数据交互和映射。
- PO 类的属性通常与数据库表的字段名一致,并提供与数据库操作相关的方法。
- 主要用于在应用程序的业务逻辑和持久化层之间进行数据交互和映射。
VO(Value Object):
- VO 主要用于封装特定的业务数据。
- 它可以包含一组相关属性,用于在程序内部封装一些特定的业务数据。
- VO 类的属性不一定与数据库表或持久化层的结构对应,而是根据业务需求和逻辑设计而定。
- 主要用于在应用程序的不同组件或层之间传递数据,用于数据的传递和封装。
DTO(Data Transfer Object):
- DTO 用于在不同层或组件之间传输数据。
- 它是一种扁平化的数据结构,通常只包含数据属性,没有业务逻辑。
- DTO 类的属性通常根据数据传输的需求进行设计,可以包含多个实体的部分数据或其他聚合属性。
- 用于解耦不同层或组件之间的数据传递,减少数据传输的复杂性。
Entity(实体):
- Entity 代表领域模型中的实体对象。
- 它是业务领域模型中的核心对象,封装了业务逻辑和行为。
- Entity 类的属性和方法主要围绕业务需求进行设计,用于表示特定的领域对象和行为。
- 通常用于在应用程序的业务逻辑层对数据进行操作和处理。