当前位置: 首页 > 知识库问答 >
问题:

如果方法参数为Interface,如何制作缓存键

鲁泰宁
2023-03-14

我有一个接受org.springframework.data.domain.Pageable作为参数的方法。当用户请求 page = 0 和 size = 20 等时,我想将这些传递的值作为缓存键

我做的是

@Cacheable(key = "#pageable.number")
public Person getPersons(Pageable pageable) 

它给出了轴测:

EL1008E:在类型为“org.springframework.data.domain.PageRequest”的对象上找不到属性或字段“number” - 也许不是公共的?

我怎样才能使缓存成为它的关键?

共有1个答案

汪弘盛
2023-03-14

该属性称为pageNumber而不是number

@Cacheable(key = "#pageable.pageNumber")
public Person getPersons(Pageable pageable) 

不过,以这种方式使用缓存的一般意义可能会受到质疑。但这可能超出了这个问题的范围。

 类似资料:
  • 我有静态方法在我的类 这就是定义 这里用的是 这是我得到的一个错误 E0167类型为“void(TV_DepthCamAgent::)(int count,int copied_file)”的参数与类型为“void()(int,int)”的参数不兼容 错误C3867“TV_DepthCamAgent::progress_callback”:非标准语法;使用' 我做错了什么?

  • 我已经在一台主机上安装了一个带有NGINX的Ubuntu实例,并将其配置为另一台主机上我的应用程序的转发代理。我的应用程序正在向NGINX发出GET请求,NGINX正在向外部服务器发出另一个GET请求(请求中指定了指向此服务器的URL),并将响应返回给应用程序。NGINX应该缓存来自外部服务器的响应。我需要尊重响应中的缓存控制头(缓存该头所说的响应),但是!当响应中没有缓存控制头时,必须缓存12小

  • 我的团队一直在Spring中使用@Cacable注释,缓存是可选的 我试着在文档中查找,但我找不到任何地方可以解释Spring在进入缓存时的行为,找到空并且应该返回可选

  • 问题内容: 因为我以前使用过jQuery的AjAX方法,所以我对XMLHttpRequests较新。但是,我需要在网络工作者中工作,现在我必须使用经典的XMLHttpRequest来解决性能问题。 我正在尝试从jquery 重建-property。如果应该禁用缓存,请添加以下内容: 但是,如果我想强制缓存(不是阻止),应该设置哪个标头? 问题答案: 您可以设置各种标头来鼓励缓存,但是它们(包括您使

  • 我注意到,虽然我在代码中设置了

  • 我有一个我想要定义的方法,叫做FindAll,它不需要参数。普罗托克在抱怨。 应为类型名。 这是针对行: rpc findAll()返回(BenchmarksList);