7
我想顯示我的JSP頁面上格式化的日期,所以我用:JSP - 日期格式和谷歌的緩存
<fmt:formatDate pattern="MMM d" value="${myEvent.date}"/>
它完美。它顯示在頁面上
Nov 28
然而,當它是由谷歌緩存奇怪的事情發生了 - 緩存頁面上的日期顯示是這樣的:
2016-11-28 20:00:00.0
任何人都可以解釋一下嗎?不應該格式化發生在服務器上?我的應用程序服務器(Tomcat)是否只發送HTML到頁面? Google如何知道這實際上是Java日期呢?
只是爲了澄清,爲了獲得緩存版本的頁面,我在Google上執行搜索,在搜索結果中顯示我的頁面,然後單擊向下箭頭並進入我的頁面的緩存版本。
你是對的:Google應該只能訪問JSP/Servlet輸出的HTML標記 - 沒有別的辦法。所以它引出了一個問題:Google緩存從哪裏獲得它的價值?您應該查看源代碼,並查看標記在緩存頁面中的真實含義,與實時版本相比較。也不排除顯而易見的可能性:頁面的緩存版本可能在您實現格式化之前創建,*或*這只是Google緩存代碼中的一個錯誤(Google仍然由人工配置,他們會犯錯誤)。 – kolossus
將Google的緩存版本與http://waybackmachine.org上的版本進行比較 – kolossus
恐怕您幾乎只能得到真正的答案隨機猜測,除非有人爲Google工作並意識到他們的內部算法已準備好承擔風險他的工作只是爲了回答你的問題可能會有幫助我隨意的猜測是,負責歸檔頁面的機器人足夠聰明地識別不完整的日期,並用完整的日期替換它,以便在我們閱讀它時保持頁面信息一致。事實上,假設您在兩年內訪問您的緩存頁面,閱讀11月28日將是一個虛假信息,而2016-11-28 20:00:00.0將是正確的。 –