首页 文章

了解所有实体共有的Spring Data JPA存储库

提问于
浏览
2

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

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

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

这引出了一些问题:

一: What if I am performing operations across several entities: which repository do I use? 二: Does Spring Data Jpa allow for repositories without any type parameters?

1 回答

  • 3

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

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

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

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

相关问题