POJO

简介: 1简单的Java对象编辑 使用POJO名称是为了避免和EJB混淆起来, 而且简称比较直接. 其中有一些属性及其getter setter方法的类,没有业务逻辑,有时可以作为VO(value -object)或dto(Data Transform Object)来使用.当然,如果你有一个简单的运算属性也是可以的,但不允许有业务方法,也不能携带有connection之类的方法。

1简单的Java对象编辑

使用POJO名称是为了避免和 EJB混淆起来, 而且简称比较直接. 其中有一些属性及其getter setter方法的类,没有业务逻辑,有时可以作为 VO(value -object)或 dto(Data Transform Object)来使用.当然,如果你有一个简单的运算属性也是可以的,但不允许有业务方法,也不能携带有connection之类的方法。

2自身特点编辑

POJO是Plain Old Java Object的缩写不错,但是它通指没有使用Entity Beans的普通java对象,可以把POJO作为支持业务逻辑的协助类。
POJO实质上可以理解为简单的实体类,顾名思义POJO类的作用是方便程序员使用数据库中的数据表,对于广大的程序员,可以很方便的将POJO类当做对象来进行使用,当然也是可以方便的调用其get,set方法。POJO类也给我们在struts框架中的配置带来了很大的方便。

3实例编辑

举例1

POJO有一些private的 参数作为对象的属性。然后针对每个 参数定义了get和set方法作为访问的接口。例如:
public class User {
private long id;
private String name;
public void setId(long id) {
this. id = id;
}
public void setName(String name) {
this. name=name;
}
public long getId() {
return id;
}
public String getName() {
return name;
}
}
POJO对象有时也被称为 Data对象,大量应用于表现现实中的对象。如果项目中使用了Hibernate 框架,有一个关联的xml文件,使对象与数据库中的表对应,对象的属性与表中的字段相对应。

错误的认识:

POJO是这样的一种“纯粹的”JavaBean,在它里面除了JavaBean规范的方法和属性没有别的东西,即private属性以及对这个属性方法的public的get和set方法。我们会发现这样的JavaBean很“单纯”,它只能装载数据,作为数据存储的载体,而不具有业务逻辑处理的能力。

真正的意思:

POJO = "Plain Old Java Object",是MartinFowler等发明的一个术语,用来表示普通的Java对象,不是JavaBean, EntityBean 或者 SessionBean。POJO不担当任何特殊的角色,也不实现任何特殊的Java框架的接口如, EJBJDBC等等。
即POJO是一个简单的普通的Java对象,它不包含 业务逻辑或持久逻辑等,但不是JavaBean、EntityBean等,不具有任何特殊角色和不继承或不实现任何其它Java框架的类或接口。
下面是摘自Martin Fowler个人网站的一句话:
"We wondered why people were so against using regular objects in their systems and concluded that it was because simple objects lacked a fancy name. So we gave them one, and it's caught on very nicely."--Martin Fowler
我们疑惑为什么人们不喜欢在他们的系统中使用普通的对象,我们得到的结论是——普通的对象缺少一个响亮的名字,因此我们给它们起了一个,并且取得了很好的效果。——Martin Fowler
目录
相关文章
|
7月前
|
Java 数据库连接
hibernate注解实体类(Dept.java)
hibernate注解实体类(Dept.java)
|
7月前
|
存储 前端开发 Java
Java:PO、VO、BO、DO、DAO、DTO、POJO
Java:PO、VO、BO、DO、DAO、DTO、POJO
158 0
|
7月前
|
Java 数据库连接 mybatis
mybatis 查询结果返回 list<pojo> 和 一个 pojo 类 的一些坑
mybatis 查询结果返回 list<pojo> 和 一个 pojo 类 的一些坑
239 0
|
数据库
MyBatisPlus - 实体类 的 常用注解
举例说明MyBatisPlus中实体类的常用注解,包括@TableName、@TableId、@TableField、@TableLogic
295 0
|
开发框架 安全 Java
|
设计模式 存储 开发框架
Java各种对象(PO,BO,VO,DTO,POJO,DAO,Entity,JavaBean,JavaBeans)的区分
Java各种对象(PO,BO,VO,DTO,POJO,DAO,Entity,JavaBean,JavaBeans)的区分
555 0
|
设计模式 消息中间件 开发框架
PO、VO、DAO、BO、DTO、POJO 能分清吗?
PO、VO、DAO、BO、DTO、POJO 能分清吗?
|
Java 开发框架 存储
|
设计模式 开发框架 Java
搞清楚java中的PO、VO、DAO、BO、DTO、POJO
我们界面上只要显示10个字段,客户端用WEB service来获取数据,没有必要把整个PO对象传递到客户端,这时我们就可以用只有这10个属性的DTO来传递结果到客户端,这样也不会暴露服务端表结构。
259 0