我对 Spring Data REST 中的项目有疑问。
我的模型包括两个带有 EmbeddedIds 的表。第一个表 (name=B) 由两个整数组成。第二个表(名称=A)由一个简单的 FK 和 B 的模型(包括 EmbeddedId)组成。
现在,如果我请求表 B,我将获得这两个 ID。但是,如果我向表 A 发出请求,我将不会获得 ID。
所以我重写了我的 EmbeddedId 类中的 toString() 方法,以至少在 URI 链接中返回 ID。
我阅读了有关 BackendIdConverter 或 Spring core.converter 并尝试正确转换 ID,但我无法达到我的目标(出现错误)。所以现在,我需要你的帮助!
为了完全理解我的问题,这是我的结构(作为演示):
@Embeddable
public class IDsFromA implements Serializable {
@ManyToOne
@JoinColumn(name="cID")
private C c;
@ManyToOne
@JoinColumns({
@JoinColumn(name="b_1", referencedColumnName="b_1"),
@JoinColumn(name="b_2", referencedColumnName="b_2")
})
private B b;
}
@Embeddable
public class IDsFromB implements Serializable {
private int b_1;
private int b_2;
}
@Entity
public class A {
@EmbeddedId
private IDsFromA idsFromA;
// ...
}
@Entity
public class B {
@EmbeddedId
private IDsFromA idsFromA;
// ...
}
@Entity
public class c {
@Id
private int cID;
// ...
}