Hibernate将两个属性映射到一列

时间:2013-11-14 07:19:27

标签: oracle hibernate hibernate-mapping

我有一个从XSD生成的对象,所以我无法更改它。在其中我有一个String DATE和一个字符串TIME(表示没有日期的时间)。

DATE = yyyy-mm-dd
TIME = hh:MM:ss:mmmm

在OracleDB中,我不想将它们表示为VARCHAR。我想使用DATEDATETIME。因此,我需要将DATE + TIME映射到一个单独的列DATETIME。

1 个答案:

答案 0 :(得分:3)

这是不可能的。您可以将两列映射到单个属性(使用复合或用户类型),但不能相反。

在映射文件中使用两次相同的列名通常会导致奇怪的异常(索引越界)。

我会在数据库中使用两列。使用用户类型将它们转换为DATE类型的数据类型。