有一个可选的缓存查询结果的想法:
public interface SomethingRepository extends PagingAndSortingRepository<Something, String>
@Cacheable(value = "listOfSomething", cacheManager = "somethingCacheManager",
unless = "#cacheResults == true")
List<Something> findAllOrderByNameAsc(@Param("ignore") boolean cacheResults);
但我得到(带或不带@Param):
java.util.NoSuchElementException: null
at java.util.ArrayList$Itr.next(ArrayList.java:864)
at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1044)
at org.springframework.data.jpa.repository.query.CriteriaQueryParameterBinder.bind(CriteriaQueryParameterBinder.java:65)
如何添加将被JPA忽略的参数?
1条答案
按热度按时间gcuhipw91#
这不是一个问题,而是我为解决问题而实现的一种变通方法-使用JPA特性(它忽略FIND和下一个保留字之间的字)在存储库中创建两个方法,并根据标志调用不同的方法