2

我参考了以下 Spring 文档:http ://static.springsource.org/spring-data/data-jpa/docs/1.1.0.RELEASE/reference/html/#repositories.custom-behaviour-for-all -存储库

如上所述,我试图了解 Jpa 自定义存储库背后的逻辑。

我的猜测是我必须创建一个扩展MyRepository接口的UserRepository接口(在我的情况下,User是特定实体),然后为它提供一个具有适当参数类型的实现。然后,每个实体都有一个存储库,每个存储库共享MyRepository接口中定义的许多常用方法。

这提出了几个问题:

一:如果我跨多个实体执行操作怎么办:我使用哪个存储库? 二:Spring Data Jpa 是否允许没有任何类型参数的存储库?

4

1 回答 1

3

如果我跨多个实体执行操作怎么办:我使用哪个存储库?

引入了“每个实体的 DAO ”方法(不一定是最好的方法)。如果您需要跨多个实体执行操作,请使用服务层。

Spring Data Jpa 是否允许没有任何类型参数的存储库?

不,你能建议一些用例吗?每个 DAO 都应该为一个实体提供强大的、类型安全的接口。如果您需要更灵活的 DAO,也许您应该探索 JPA 中的继承?

于 2012-07-20T16:50:45.437 回答