Java JPA-是否有将列值映射到值对象的机制?

Java JPA-是否有将列值映射到值对象的机制?,java,jpa,Java,Jpa,是否有JPA机制自动将列值(如String、Integer等)转换为值对象(如myMyDate) 在我的例子中,对于表示MyDate的每个字段,getter中都有一个setter代码,可以从Integer转换为MyDate,反之亦然。这种代码重复的增加不成比例 下面看起来像是我要找的。MyDate不是一个实体,而是一个值对象 @Column (name = "d_end") private MyDate dEnd; 您可以使用JPA的@Embeddeble和@Embedded: 尝试创建带有注

是否有JPA机制自动将列值(如
String
Integer
等)转换为值对象(如my
MyDate

在我的例子中,对于表示MyDate的每个字段,getter中都有一个setter代码,可以从
Integer
转换为
MyDate
,反之亦然。这种代码重复的增加不成比例

下面看起来像是我要找的。MyDate不是一个实体,而是一个值对象

@Column (name = "d_end")
private MyDate dEnd;

您可以使用JPA的@Embeddeble和@Embedded:

尝试创建带有注释的
MyDate
类:
@embeddeble
,并在
MyDate
中定义db列

然后在您的实体中:

@Embedded
private MyDate dEnd;
编辑 我想粘贴一个有意义的例子,在简短的google之后,我找到了这个链接,阅读了它,它详细地解释了如何使用它们(用例子):


感谢您抽出时间回答我的问题。但万一我想用MyDate来处理各种实体中名称不同的MyDate文化,该怎么办呢?我应该先读一下。找到了一些可能的解决方案:@Barthelomeus然后我认为使用
@Type
@TypeDef
将是正确的情况。例如,请参见此处,您正在查找的内容:这就是我正在查找的内容。不幸的是,我使用了EclipseLink。我相信EclipseLink中的等价注释是
@Converter
。关于这一点的文档数量并不多。所以,我得看看这是否能解决我的问题。