我想重写 @ManyToOne
关系,以模仿某些遗留代码的行为。后者将未处理的关系存储为 0
而不是 null
. 所有其他值(>0)都是常规引用。
有没有一种方法可以实现 @ManyToOne
值来处理这个?
实体:
@Entity
@Table(name = "Content")
public class ContentEntity
// ..
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "ColorID")
private ColorEntity color;
}
@Entity
@Table(name = "Color")
public class ColorEntity {
@Id
@GeneratedValue
@Column(name = "ID")
private String id;
// ..
}
数据库:
CREATE TABLE `Content` (
# ..
`ColorID` VARCHAR(255) DEFAULT NULL);
CREATE TABLE `Color` (
`ID` VARCHAR(255) PRIMARY KEY,
# ..)
目标表中没有与 id:0
但有多张 id:>0
我在spring启动应用程序中使用jpa。
1条答案
按热度按时间14ifxucb1#
我认为您可以使用列变压器来实现此目的: