微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – JSP – 日期格式和Google缓存

我想在JSP页面显示格式化的日期,所以我使用:
<fmt:formatDate pattern="MMM d" value="${myEvent.date}"/>

它完美地运作.它在页面显示

Nov 28

但是,当Google缓存它时会发生奇怪的事情 – 缓存页面上的日期显示如下:

2016-11-28 20:00:00.0

有谁能解释一下?不应该在服务器上进行格式化吗?我的应用程序服务器(Tomcat)是否只将HTML发送到页面?谷歌如何知道这实际上是一个Java日期?

只是为了澄清,为了进入页面的缓存版本,我在Google上执行搜索,在搜索结果显示我的页面,然后单击向下箭头并转到我页面的缓存版本.

解决方法

显然,如果在没有“Accept-Language”HTTP标头的情况下请求JSP,则JSTL formatDate标记不会格式化日期,而是返回Date对象的toString()的结果.

您可以使用cUrl获取页面源(而不是在Chrome中查看页面源)来验证这一点.

结论:如果您使用的是JSTL formatDate标记,并且希望在Google的缓存中格式化日期,则应明确设置区域设置.例如:

<fmt:setLocale value="en_US" />

我希望这可以帮助别人.

原文地址:https://www.jb51.cc/java/127873.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐