8.5. 动态组件 (Dynamic components)
你甚至可以映射Map
类型的属性:
<dynamic-component name="userAttributes">
<property name="foo" column="FOO" type="string"/>
<property name="bar" column="BAR" type="integer"/>
<many-to-one name="baz" class="Baz" column="BAZ_ID"/>
</dynamic-component>
从<dynamic-component>
映射的语义上来讲,它和<component>
是相同的。 这种映射类型的优点在于通过修改映射文件,就可以具有在部署时检测真实属性的能力。利用一个DOM解析器,也可以在程序运行时操作映射文件。 更好的是,你可以通过Configuration
对象来访问(或者修改)Hibernate的运行时元模型。