美文网首页Spring Boot实践记录个人技术栈
Java编码规范之数据对象命名

Java编码规范之数据对象命名

作者: Chinesszz | 来源:发表于2017-02-21 14:58 被阅读79次

    数据对象分多种,为方便阅读并区分各数据对象的用途,习惯将数据对象分为以下几类,供参考:

    • 1.持久对象 PO(persistant object)
      对象关系映射(ORM)概念的产物,基本上对象的成员变量对应了数据库中一行记录各字段的映射,方便实现ORM的持久层框架如(Ibatis)在读取数据的时候将数据库一行记录快速转换为对象供业务层使用。因此,持久对象PO里边本应该不包含逻辑,只有标配的getter和setter方法即可。
    • 2.数据对象DO(data object) 或 值对象VO(value object)
      通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但PO对象中成员变量严格与数据库一行记录的字段严格一一映射,但DO或者VO可以不是这样的,只要业务层对象之前交换需要的数据字段即可,因此承载的数据而言 DO <= PO。
    • 3.数据传输对象DTO/TO (data transfer object)
      一般用于不同应用程序之间传输的数据对象,同个应用程序内部一般用DO即可。
    • 4.业务对象BO (business object)
      封装业务逻辑结果的业务对象可以包含多个类型的DO/VO或者PO等,一般封装好的BO可以包含各个维度的结果数据直接给Control层直接使用,一般体积会叫DO或PO大。
    • 5.简单无规则java对象POJO(plain ordinary java object)
      纯传统意义的java对象,只有属性字段及setter和getter方法,其中DO、PO一般可以称为POJO。实际项目中,一般不会有命名POJO的习惯。
    • 6.数据访问对象DAO(data access object)
      负责持久层的操作,并为业务层提供接口,一般配合PO针对数据库的CURD操作使用。

    以上对象命名纯属个人比较认可的对象命名习惯,一般还要结合团队的命名规范和项目的分层决定,命名规范区分开来只为开发减少沟通成本,如果没有必要,一切从简即可!

    附件

    本文翻译自博客园 link

    阿里巴巴 Java 开发手册link

    相关文章

      网友评论

        本文标题:Java编码规范之数据对象命名

        本文链接:https://www.haomeiwen.com/subject/wpluwttx.html