2011-04-08 67 views
0

我已经定义了一个自定义用户类型,在使用我的实体属性时可以正常工作。例如:是否可以将Hibernate <component>列映射到自定义用户类型?

<class name="com.my.sample" table="MY_TABLE"> 
    ... 
    <property name="foo" type="myCustomUserType"> 
</class> 

我需要这样的:

<class name="com.my.sample" table="MY_OTHER"> 
    ... 
    <component name="myAddress" class="com.my.sample.Address"> 
     <property name="street" column="MY_OTHER_ADRR_STREET" /> 
     <property name="foo" type="myCustomUserType" column="MY_OTHER_ADRR_COLUMN" /> 
    </component> 
</class> 

很显然,我假定该myCustomUserType在.HBM文件中正确定义。是否可以映射这样的<component>属性?

+1

你试过了吗?它应该工作正常。 – 2011-04-08 19:35:49

回答

0

其实,它工作正常。还可以使用诸如<many-to-one>之类的关系映射<component>属性。映射是somethig这样的:

<component name="myAddress" class="com.my.sample.Address" > 
    <property name="aSimpleDate" column="TBL_ADDR_SIMPLE_DATE" type="date" /> 
    <many-to-one class="OtherClass" name="otherClass" > 
     <column name="TBL_ADDR_OTHER_CLASS_ID" precision="9" scale="0"/> 
    </many-to-one> 
    <property name="foo" column="TLB_ADDR_FOO" type="myCustomUserType" /> 
</component> 

可惜的是,该Hibernate documentation是不是对此非常明显。

相关问题