POJO, VO, PO, DTO, DAO, Java bean的理解

暑期为了扩充自己的Java知识,于是尝试贴合企业开发流程,了解Java项目的分工合作模式。以下就是关于POJO,VO,PO,DTO,DAO, java bean等的理解。

一般的软件开发业务分为三层:
1.视图层(View+Action)
2.服务层(Service)
3.持久层(DAO)

POJO类: Plain Ordinary Java Object
那么什么是POJO类,通过名字可以得知是简单Java对象,不继承任何类(只继承Object类),可以实现任何接口,但依据官方文档是不实现任何接口,只有属性和get,set方法,可以说是最简单的java普通类。例如以下代码:

public class PojoDemo{

    private String name;
    private int age;
    ···

    public void setName(String name){
        this.name = name;
    }
    public String getName(){
        return name;
    }
    ···
}

根据POJO类用途的不同,可以把POJO类转化为VO, PO, DTO

VO: Value Object 值对象
通常用于业务层之间的数据传递,和 PO 一样也是仅仅包含数据而已。但应是抽象出的业务对象 , 可以和表对应 , 也可以不 , 这根据业务的需要 。用 new 关键字创建,由 GC 回收的
PO: Persistant Object 持久对象
PO为持久层对象,那么就作用在持久层,即存储数据的地方。那么就不可避免要与数据库相关联。PO可以看成是与数据库中的表相映射的java对象。PO中应该不包含任何和对数据库的操作。
DTO: Data Transfer Object 数据传输对象
泛指用于展示层(view)与服务层(service)之间的数据传输对象。

DAO(Database Access Object) 数据访问对象
与数据库相关联的类通常被称为DAO,此对象用于访问数据库。通常和 PO 结合使用, DAO 中包含了各种数据库的操作方法。通过它的方法 , 结合 PO 对数据库进行相关的操作。夹在业务逻辑与数据库资源中间。配合 VO, 提供数据库的增删改查操作。

JavaBean
JavaBean是一个遵循特定写法的Java类,是一种Java语言编写的可重用组件,它的方法命名,构造及行为必须符合特定的约定:
1、这个类必须具有一个公共的(public)无参构造函数;
2、所有属性私有化(private);
3、私有化的属性必须通过public类型的方法(getter和setter)暴露给其他程序,并且方法的命名也必须遵循一定的命名规范。
4、这个类应是可序列化的。(比如可以实现Serializable 接口,用于实现bean的持久性)
Javabean概念来源于https://blog.csdn.net/chenchunlin526/article/details/69939337

对于一个软件开发者而言,了解项目的架构以及层次是十分重要的,这是提高开发效率的关键一环。以上的基本概念后期还会补充,先码在这儿用来巩固巩固了。

你可能感兴趣的:(软件开发)