定制属性访问
类的属性由持久化引擎直接(通过字段)或者间接(通过获取方法和设置方法)访问。在xml映射文件中,用的
default-access="field|property|noop|custom.Class"属性给类控制默认的访问策略。 也可以用access属性在hibernate xml映射中控制属性级上的访问策略,如: field是字段访问,property是属性访问. 另一个可能有用的策略是noop,它映射java持久化类中不存在的属性,这听起来 有点奇怪,但是它让你在HQL查询中指向这个"虚拟"属性(换句话说,只在HQL查询中使用数据库列).
在属性上使用访问策略noop的实例.
pom.xml:
resources/proxool.xml:
resources/hibernate.cfg.xml:
HibernateTest/Student.java , 注意:这里已经没有了age属性
HibernateTest/Student.hbm.xml, 注意:这里我们添加了一个myAge映射,myAge是一个不存在的属性.
util/HibernateUtil.java:
util/StudentManager.java , 注意HQL语句,其中用了myAge: