Java Bean、POJO、 Entity、 VO , 其实都是java 对象,只不过用于不同场合罢了。
Java Bean: 就是一个普通的Java 对象, 只不过是加了一些约束条件。 声明的 property 是 private 的, 并且,实现了 Get 和set 方法。
POJO: Plain Old Java Object 。 一个普通的对象而已;
Entity: 实体的意思。 在访问数据库时,才声明 Entity。 说白了, 一个Entity 就是对应表中的一条记录。 当 insert 一条记录时,就是insert 一条 Entity。
VO: Value Object (值对象) 。
PO: Persistent Object。 持久对象。 VO、PO 也没什么特别之处,因为有了 Hibernate, 自然会有些新玩意儿。
DAO: data Access Object : 数据访问对象。 也有的直接将其翻译为 数据库访问对象。 通俗地理解,就是与数据库打交道的。
按照 Spring MVC 分层结构:
JavaBean: 表示层 (Presentation Layer)
Entity: 业务层 (Service layer)
Dao: 数据访问层 (data access layer)。