Spring Data JPA 存储库方法重载

Gab*_*是好人 2 orm spring hibernate spring-data-jpa

例如,我有一本书 JpaRepository。书籍有一个名为 的字段Name,书籍存储库有一个方法findOneByName(与 jpa 存储库方法命名约定相同)。但我需要两个不同的版本来findOneByName在不同的用例中使用。一种版本是带锁注释的,另一种是无锁的。像这样:

public interface BookRepository extends JpaRepository<BookDAO, Long> {

   @Lock(LockModeType.READ)
   BookDAO findOneByName( String name );

   BookDAO findOneByName( String name );
}
Run Code Online (Sandbox Code Playgroud)

在 Spring 中可以实现这一目标吗?如果是的话,调用时如何区分这两个方法。如果没有,是否有另一种方法可以在仍然使用 Spring JPA 存储库接口(如 findOneBy***)的情况下完成此操作。

Cep*_*pr0 5

根据参考文献,我们可以使用以下前缀来命名查询方法:find\xe2\x80\xa6Byread\xe2\x80\xa6Byquery\xe2\x80\xa6Bycount\xe2\x80\xa6Byget\xe2\x80\xa6By

\n\n

所以方法BookDAO findByName(String name)BookDAO getByName(String name)意志做同样的事情。

\n