JAVA对象总结

1.POJO (plain old java object) : 普通的java对象,有别于特殊的java对象(含继承约束等)和EJB。POJO一般只有一系列的属性和相应的get、set方法。

2.PO (persistent object) : 持久化对象,有别于POJO,必须对应数据库中的实体。一个PO对应数据库的一条记录。持久化对象的生命周期与数据库密切相关,只能存在于connection之中,连接关闭后,PO就消失了。PO相对于POJO有诸多不同,比如PO中会有保存数据库entity状态的属性和方法。但是ORM(object-relation mapping)追求的目标是PO和POJO的一致,所以在程序员的日常开发中,都是将POJO作为PO使用,而将POJO转化为PO的功能交给hibernate等框架来实现

3.DTO (data transfer object) : 数据传输对象,以前被称为值对象(VO,value object),作用仅在于在应用程序的各个子系统间传输数据,在表现层展示。与POJO对应一个数据库实体不同,DTO并不对应一个实体,可能仅存储实体的部分属性或加入符合传输需求的其他的属性。

4.DAO (data access object) : 数据访问对象。提供访问数据库的抽象接口,或者持久化机制,而不暴露数据库的内部详细信息。DAO提供从程序调用到持久层的匹配。

 5.BO (business object) : 业务对象。主要是将业务逻辑封装为一个对象,该对象可以包含一个或多个其他对象。

====================================================================================

项目中开发大量使用了DTO对象,分享一下使用经验 : 

1.选择DTO对象的原因:按需求组织DTO对象,只组织需要的字段,可以避免传输整个表的字段,一定程度上提高了安全性。

2.DTO对象的编写(实例仅供参考) :

1).一个DTO对象继承Serializable

2) .私有属性,无参空构造,有参(参数是与DTO对应的实体类)构造,get set方法


实例2.(DTO对象+DTOMapper对象)

DTO对象:

DTOMapper对象:


注意:@Mapping将DTO与实体类一些字段不一致的给对应上,source是实体类,target是dto




猜你喜欢

转载自blog.csdn.net/weixin_41830501/article/details/80388487