当前位置: 首页 > 面试题库 >

如何在Spring MVC中设置缓存头?

颜熙云
2023-03-14
问题内容

在基于注释的Spring MVC控制器中,为特定路径设置缓存头的首选方法是什么?


问题答案:

org.springframework.web.servlet.support.WebContentGenerator,这是所有Spring控制器的基类,有很多处理缓存头的方法:

/* Set whether to use the HTTP 1.1 cache-control header. Default is "true".
 * <p>Note: Cache headers will only get applied if caching is enabled
 * (or explicitly prevented) for the current request. */
public final void setUseCacheControlHeader();

/* Return whether the HTTP 1.1 cache-control header is used. */
public final boolean isUseCacheControlHeader();

/* Set whether to use the HTTP 1.1 cache-control header value "no-store"
 * when preventing caching. Default is "true". */
public final void setUseCacheControlNoStore(boolean useCacheControlNoStore);

/* Cache content for the given number of seconds. Default is -1,
 * indicating no generation of cache-related headers.
 * Only if this is set to 0 (no cache) or a positive value (cache for
 * this many seconds) will this class generate cache headers.
 * The headers can be overwritten by subclasses, before content is generated. */
public final void setCacheSeconds(int seconds);

它们可以在内容生成之前在控制器中调用,也可以在Spring上下文中指定为bean属性。



 类似资料:
  • 我在Eclipse包资源管理器中看到以下信息: 是否可以更改此位置?

  • set 设置普通类型的值 设置 set set(key: string, value: string expiryMode: string[ EX 秒 PX 分钟 ], time: number ) key: 键名称 value:存储的值 expiryMode:添加过期时间类型 EX 秒 PX 分钟 time:过期时间 // 存储一个key为gender,value 为 男人的数据,10秒后过期

  • 我试图在我的应用程序中实现jpa 发展能力 所以,我的DataConfig看起来像这样: 但是,当我尝试启动应用程序时,会出现错误消息。制造战争- 已连接到服务器[2018-09-26 09:54:32631]工件未命名:正在部署工件,请稍候。。。2018年9月26日09:54:34.460警告[RMI TCP连接(3)-127.0.0.1]组织。阿帕奇。公猫dbcp。dbcp2。基本资源工厂。g

  • 遵循几个链接后,尝试不同的解决方案,如添加 我的头和尝试其他解决方案,他们似乎都不起作用。我真的找不到合适的指南来说明在哪里以及如何正确地添加它。在尝试tome SEO(搜索引擎优化)并得到这个错误后,我开始这样做。 在15个请求中设置未来缓存策略 为静态资源定义几天的缓存保留时间将减少服务器上的负载。 过期标头 某些资源正在使用“过期 HTTP 标头”来获取有效的缓存策略:这是最佳做法。但是,您

  • 我的Laravel应用程序正在为每个站点返回默认的

  • 问题内容: 从缓存还原后,我需要在磁盘上缓存resp并保持其类型为http.Response。有任何想法吗? 问题答案: 最简单的方法是使用httputil.DumpResponse和http.ReadResponse。 请参阅此处的示例。(您必须将代码复制到本地计算机上并在本地计算机上运行,​​因为Playground不允许I / O) 第一个将接收到的请求转储到内存中的[]字节中,然后可以将其