我有一个使用复合键的数据库。是否可以使用 spring-data-jdbc?我尝试了里程碑版本 1.1M2,其中我以以下方式映射了我的实体:
class History {
@ID
@Embedded
private CompositeHistoryID id;
}
然后在我的存储库类中,我添加了
HistoryRepository extends Repository<History,CompositeHistoryID >{
History findByhId(CompositeHistoryID id)
}
我跟踪了SQL,它没有工作。嵌入部分有效,但 where 子句不正确。它使用单个参数保持器,而不是使用常规的复合键结构,其中 element1=subkey1 和 element2=subkey2 等等......
我有两个问题。有什么方法可以使复合 ID 工作?
第二个问题是,假设我在 SAVE 方法的基础@Query
上使用了一个自定义findByID
,如果之后,SAVE 方法会起作用吗?什么是根本没有ID,如果我只是随机选择一个列并说你将成为我的ID怎么办?