如何在Default Spring Data JPA方法上添加QueryHints?

时间:2012-02-21 02:26:37

标签: spring spring-data-jpa

我能够将查询缓存与Spring Data JPA一起用于我的自定义查询方法,如下所示。

public interface CountryRepository extends JpaRepository<Country, String> {
@QueryHints({ @QueryHint(name = "org.hibernate.cacheable", value ="true") })
Country findByCountryName(String countryName);
@QueryHints({ @QueryHint(name = "org.hibernate.cacheable", value ="true") })
Country findByCountryCode(String countryCode); }

但是,如何在现有父方法(如findAll()?

)上添加@QueryHints

感谢。

2 个答案:

答案 0 :(得分:3)

findAll(),findOne()等不是Query(s)。实体上的任何缓存规范都会在这些方法中生效。

例如,

@Cacheable
@Entity
public class User {

}

答案 1 :(得分:1)

最初,在默认的CRUD方法中不支持查询提示注释,但显然它已经针对1.6M1版本进行了修复:

https://jira.spring.io/browse/DATAJPA-173