3.2.3 编写POJO

开发者都已经发现实体Bean过于复杂,而且生产性也不高。正是由于这些原因,许多开发者又回归了传统,开始使用那些最基本的Java Bean,也就是POJO(Plain Old Java Object)。

Hibernate把业务模型实现为POJO。在Hibernate中强加给业务模型的需求同时也是开发POJO的最佳实践。因此,绝大部分的POJO都可以作为Hibernate中的实现而无需做任何的改动。我们将要介绍的编程模型是非插入式的Javabean规范、POJO的最佳实践以及Hibernate的需求。通常一个POJO描述了业务操作—被定义为行为;属性--代表状态。还有一些属性用来表示POJO之间的关联关系。

列表3.1展示了一个最普通的POJO。它是我们业务模型中User实体的实现。

(1)Hibernate并不要求持久化类实现Serializable接口。但是如果你的对象需要保存在HttpSession中或者通过RMI传递的话,序列化则是一个必选项。

(2)一般情况下,Javabean并不需要显式的声明一个构造方法,但是Hibernate要求每一个Javabean都需要实现了一个无参数的构造方法。然后Hibernate通过Java的反射机制来调用生成类的对象。虽然并不要求构造方法是public的,但是起码在package中是可见的。

(3)POJO的属性实现了业务实体的属性,举例来说,用户名。属性通常为实现为实体的变量以及方位这些变量的方法:通常表现为getXXX和setXXX。3.1中的POJO提供了用户名和地址的访问方法。

Javabean规范了中提供了对于这些方法的命名规范。这些规范可以帮助Hibernate很容易的访问和修改这些属性。

Hibernate并不强制要求get方法声明成public的,它也可以使用私有的方法来访问变量。

当然一些get方法可能还会做一些其他方面的操作,例如验证。

(4)POJO还定义了相关的业务方法来计算运送给指定用户的费用。

现在我们已经看到了使用POJO的编程模型,接下来我们将介绍如何处理这些类之间的关联关系。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值