1.2 持久化类的编写规则
1.2.1:持久化类的概述
1.2.1.1 什么事持久化类
持久化:将内存中的一个对象持久化到数据库中的过程。Hibernate框架就是用来进行持久化的框架。
持久化类:一个java对象与数据库的表建立了映射关系。
持久化类 = java类 + 映射文件
1.2.2 持久化类的编写规则
- 对持久化类提供一个无参的构造方法 :(hibernate底层需要使用反射生成事例)
- 属性需要私有,对私有属性提供public的get和set方法:(Hibernate中获取,设置对象的值)。
- 对持久化类提供一个唯一的标识OID与数据库主键对应:(java中通过对象的地址区分是否是同一个对象。数据库中通过主键来确定是否是同一个记录,在hibernate中通过持久化类的OID 的属性区分是否是一个对象)。
- 持久化类中属性尽量使用包装类类型: (因为基本数据类型默认是0,有歧义。包装类的默认值是null)
- 持久化类不要使用final进行修饰(延迟加载本身是hibernate一个优化的手段)返回的是一个代理对象。(javassist可以对没有实现接口的类产生代理——使用了非常底层字节码增强技术,继承这个类进行代理)。如果不能被继承,不能产生代理对象。延迟加载也就失效了。Load方法就和get方法一致。