从 CrudRepository Spring Boot 访问嵌入式 class 的字段
Access to a field of a Embedded class from CrudRepository SpringBoot
我有这个:
@Embeddable ClassA{
private String attributeA;
private String attributeB;
}
@Entity ClassB{
private String attributeC;
@Embedded ClassA extraAttrs;
}
最后我有一个 CrudRepository,我想通过使用 ClassA 的属性来获取查询,所以我不能这样写,例如:
public interface TestCrud extends CrudRepository<ClassB, Long> {
public List<ClassB> findByAttributeA(String anA);
}
我做不到,因为属性 A 在嵌入的 ClassA 中而不是在 ClassB 中
如何从 CrudRepository 接口定义访问此属性?因为这个数据在单个table中,所以放入一个嵌入式class的目的是因为ClassA的属性对很多实体来说是通用的,但不是PK,但现在我需要访问正如我之前所说。
有什么想法吗?
非常感谢所有试图帮助我的人:),
这其实很简单,你需要将它们连接在一起,你的情况试试这个
findByExtraAttrsAttributeA(...)
我有这个:
@Embeddable ClassA{
private String attributeA;
private String attributeB;
}
@Entity ClassB{
private String attributeC;
@Embedded ClassA extraAttrs;
}
最后我有一个 CrudRepository,我想通过使用 ClassA 的属性来获取查询,所以我不能这样写,例如:
public interface TestCrud extends CrudRepository<ClassB, Long> {
public List<ClassB> findByAttributeA(String anA);
}
我做不到,因为属性 A 在嵌入的 ClassA 中而不是在 ClassB 中
如何从 CrudRepository 接口定义访问此属性?因为这个数据在单个table中,所以放入一个嵌入式class的目的是因为ClassA的属性对很多实体来说是通用的,但不是PK,但现在我需要访问正如我之前所说。
有什么想法吗?
非常感谢所有试图帮助我的人:),
这其实很简单,你需要将它们连接在一起,你的情况试试这个
findByExtraAttrsAttributeA(...)