在Hibernate应用中,持久化类的访问方法有两个调用者:
- Java应用程序:调用对象的getter方法读取对象的信息,把它输出到用户界面。调用对象的setter方法,把用户输入的信息写入到对象中。
- Hibernate:调用对象的getter方法,读取对象信息,把它保存到数据库。注:通过getter方法读取的是在Session(内存)中的对象的属性,如果要保存对象,就必须先获得这些属性的值,然后再写入数据库。调用对象的setter方法,把从数据库中读取出来的属性值信息赋值给对象。
注意:java对象不能访问持久化类的private类型的getter/setter方法,而Hibernate没有这个限制,它能够访问各种级别的getter/setter方法。
在对象-关系映射文件中,
元素的access属性用于指定Hibernate访问持久化类的属性的方式。它有以下两个可选值:
- Property:这是默认的,表明Hibernate通过相应的getter/setter方法来访问类的属性。(推荐使用,可以更灵活的封装持久化类,提高域模型的透明性)
- field:表明Hibernate 运用java反射机制直接来访问类的属性,不需要getter/setter方法,通过这种方法,在java程序中就无法获取/设置属性的值。设置方式如下:
阅读(632) | 评论(0) | 转发(0) |