예를 들어 JpaRepository라는 책이 있습니다. 책의 필드가 Name
이라면 책 저장소에는 findOneByName
(jpa 저장소 메소드 이름 지정 규칙) 방법이 있습니다. 하지만 다른 사용 사례에서 사용하려면 findOneByName
의 두 가지 버전이 필요합니다. 하나의 버전은 입니다. 잠금은이며, 다른 하나는 입니다. 잠금 해제입니다. 이처럼 :스프링 데이터 JPA 저장소 메소드 오버로드
public interface BookRepository extends JpaRepository<BookDAO, Long> {
@Lock(LockModeType.READ)
BookDAO findOneByName(String name);
BookDAO findOneByName(String name);
}
는 봄이를 달성 할 수 있습니까? 그렇다면 두 가지 방법을 호출 할 때 구별하는 방법. 그렇지 않다면 Spring JPA 저장소 인터페이스 (예 : findOneBy ***)를 사용하면서 다른 방법으로 그것을 수행 할 수 있습니까?
나는 그들 중 하나에 대해서만 Query 메소드를 사용하지 않을 것이다. @Lock 메소드를위한 새로운 메소드를 만들고'findOneByNameWithLock (name)'과 같은 메소드를 호출 할 것입니다. 그런 다음 @Query 어노테이션을 사용하고 이에 대한 질의를 지정하십시오. – LucasP
아니요, 이러면 안됩니다 (스프링과는 관계가 없지만 Java가 작동하는 방식). –
@ M.Deinum 감사. 이 유스 케이스와 관련하여 몇 가지 건설적인 제안이 있습니까? 그것을 다른 방법으로하는 방법? –