我想知道是否可以映射不同的数据类型。例如,我有一个 Java 中的 Visit 数据类型,它有一个 String 类型的 userEmail 字段,我可以使用 hibernate 将其映射到具有 userID 而不是 userEmail 的数据库表吗?根据id它会找到电子邮件并将电子邮件返回给java,反之亦然?这可能吗?
如果是,那么映射会是什么样子?或者这应该是什么样子:
<many-to-one name="patientEmail"
column="idPatient"
not-null="true"
class="com.my.myapp.datamodel.Patient"/>
最佳答案
是的,可以。
您必须创建一个扩展为 Hibernate 的 UserType 的类。
它可以是用户喜欢的:
@Column(name = "commission_type")
@Type(type = "com.core.commission.model.FNEnumUserType", parameters = @Parameter(name = "type", value = "com.core.commission.dto.CommissionType"))
private CommissionType commissionType;
其中 FNEnumUserType 是 cstom 数据类型,与您的 Visit 相同
关于java - 是否可以使用 hibernate 映射不同的字段类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14071417/