16.1.4.1. 别名和属性引用(Alias and property references)
大多数情况下,都需要上面的属性注射,但在使用更加复杂的映射,比如复合属性、通过标识符构造继承树,以及集合类等等情况下,也有一些特别的别名,来允许Hibernate注射合适的别名。
下表列出了使用别名注射参数的不同可能性。注意:下面结果中的别名只是示例,实用时每个别名需要唯一并且不同的名字。
表 16.1. 别名注射(alias injection names)
描述 | 语法 | 示例 |
---|---|---|
简单属性 | {[aliasname].[propertyname] | A_NAME as {item.name} |
复合属性 | {[aliasname].[componentname].[propertyname]} | CURRENCY as {item.amount.currency}, VALUE as {item.amount.value} |
实体辨别器(Discriminator of an entity) | {[aliasname].class} | DISC as {item.class} |
实体的所有属性 | {[aliasname].} | {item.} |
集合键(collection key) | {[aliasname].key} | ORGID as {coll.key} |
集合id | {[aliasname].id} | EMPID as {coll.id} |
集合元素 | {[aliasname].element} | XID as {coll.element} |
集合元素的属性 | {[aliasname].element.[propertyname]} | NAME as {coll.element.name} |
集合元素的所有属性 | {[aliasname].element.} | {coll.element.} |
集合的所有属性 | {[aliasname].} | {coll.} |
当前内容版权归 wizardforcel 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 wizardforcel .