2014-02-09 1 views
0

이 같은 쿼리를 수정 스프링 데이터를 만들 수 있나요 수정 :봄 데이터 - 쿼리와으로 Ehcache (캐시)

@Modifying 
@Query("update User u set u.firstname = ?1 where u.lastname = ?2") 
int setFixedFirstnameFor(String firstname, String lastname); 

자동 사용자 개체의 내으로 Ehcache를 무효화를?

감사합니다. 캐시 무효화 최대 절전 모드에 의해 자동으로 처리 될 것 같은 경우

@org.hibernate.annotations.Cache(usage=CacheConcurrencyStrategy.READ_WRITE) 
public class User { 
    ... 
} 

: 당신은 예를 들어 READ_WRITE 캐시 동시성 전략을 사용하여 캐시로 사용자 엔티티를 선언하는 경우

답변

1

는 네, 가능합니다.

0

here에 설명 된 스프링 캐시 추상화를 살펴보십시오. 기본적으로 을 구성하여 응용 프로그램 구성에서 사용할 캐시 공급자를 어디에서 캐시/제거 할지를 완벽하게 구성 할 수 있습니다.

주석이 달린 메서드 수준에서 캐시됩니다.

+0

이 솔루션은 코드 변경과 관련하여 훨씬 더 까다로운 것으로 느낍니다. 가능한 한 적은 코드로 현재 코드를 변경하고 싶습니다. – Urbanleg

+0

"까다로운"것은 무엇을 의미합니까? 리포지토리 방법을 보여 주면서 정확하게 캐시 무효화를 관리하려는 인상을줍니다. 이미 가지고있는 솔루션에 더 가까운 솔루션을 찾고 있다면 그에 맞게 질문을 업데이트해야합니다. 우리는 당신이 보여주는 것만으로 판단 할 수 있습니다 :). –