直接看配置文件说明吧.一个Hibernate 的映射文件如下面的格式:<hibernate-mapping package="test"> <class name="Users" table="USERS">
<!--其它定义--!>
<property name="result" column="RESULT" not-null="true" length="30" type="test.MyClass"/>
<!--其它定义--!>
</class>
</hibernate-mapping>
result 在数据库里是一个 string 类型,但转成 test.MyClass 要调用一个函数来转换。hibernate 支持做到使用自定义的函数将 string 转成 test.MyClass 类型吗?支持的话如何写这个配置。谢谢了。
<!--其它定义--!>
<property name="result" column="RESULT" not-null="true" length="30" type="test.MyClass"/>
<!--其它定义--!>
</class>
</hibernate-mapping>
result 在数据库里是一个 string 类型,但转成 test.MyClass 要调用一个函数来转换。hibernate 支持做到使用自定义的函数将 string 转成 test.MyClass 类型吗?支持的话如何写这个配置。谢谢了。
也许可以尝试在test.MyClass类里新增一个带String参数的构造方法,在构造方法里进行转换(当心无限构造的问题)喵~``.
1.定义一个JavaBean,添加它的setter与getter方法;
2.将JavaBean与数据库的表进行绑定生成.hbm.xml文件
3.Hibernate会根据.hbm.xml文件中的定义对JavaBean与数据库中表的定义进行插入操作楼主要实现的基本的这个功能,完全可以,在JavaBean中定义一个属性用来表示这个内部类
然后修改这个属性的setter与getter,使之与内部类的与数据库表的字段的读取与插入想对应,即可。再具体的问题,可以再讨论,呵呵。BTW:可以看一下Hibernate的基本原理,就是这个样子的。
返回结果后/插入数据前再转换呗~
类型变化大的话,建议新建一个和hibernate映射bean一样的javabean,,这样就可以在get/set 方法里类型转换了哈
http://zhudengchao.javaeye.com/blog/257936
也许可以尝试在test.MyClass类里新增一个带String参数的构造方法,在构造方法里进行转换(当心无限构造的问题)