- 我可以在 RestController 中的方法之上使用 Spring 缓存注释吗?
- 由于弹簧缓存是服务级别缓存,但我有一个案例没有服务,所以我在控制器中使用缓存。
- 在控制器中使用缓存是否好?
- 我使用咖啡因作为我的底层缓存。
- 我认为在控制器级别使用这种缓存可能会发生任何多线程问题。
问问题
1201 次
1 回答
3
我不会在涉及用户身份验证的弹簧控制器中使用可缓存(“某物”),因为可缓存仅保留参数。但是,如果您不需要根据用户或任何请求标头信息进行缓存,我认为没有任何问题。
例如,在以下示例中,当您让用户重新登录时:
@RequestMapping(...)
@Cacheable("something")
public T analyze(@RequestParam(value = "text") String text) {
....
Object userObj =
SecurityContextHolder.getContext().getAuthentication().getPrincipal();
....
}
如果您想根据标头进行缓存,您可能有一个选项是在控制器方法中添加@RequestHeader(value="key") String val
于 2017-08-17T09:11:59.687 回答