我開始使用memcache和app引擎(java)。我有一個頁面,可以緩存從數據存儲中獲取的結果。例如:簡單頁面的基本緩存策略?
// index.jsp
<%
List<Horse> horses = datastore.getHorses(PMF.get());
for (Horse it : horses) {
%>
<div><%= it.getName() %></div>
<%
}
%>
我可以把馬列表放到memcache中,但是隻是緩存整個頁面內容會更有意義嗎?我的意思是下一次用戶想要加載這個頁面,只是將儲存在緩存中的整個html內容作爲一個字符串吐出來?想知道這是可能的還是一個好的做法。我不確定我會怎麼做,因爲我需要創建一個所有html內容的大量字符串,然後在jsp中打印()它,並將其存儲在memcache中,如下所示:
// index.jsp
<%
List<Horse> horses = datastore.getHorses(PMF.get());
StringBuilder sb = new StringBuilder();
for (Horse it : horses) {
sb.append("<div>");
sb.append(it.getName());
sb.append("</div>");
}
// Render contents.
<%= sb.toString() %>
// Also can store it in memcache for future requests.
memCache.put("test/index.jsp", sb.toString());
%>
感謝
http://stackoverflow.com/questions/3217645/caching-contents-of-a-page爲什麼你發佈兩個基本相同的問題?另一個問題最初只用'jsp'和'servlet'標記。只需編輯問題以將這些標籤添加到當前問題中,就可以獲得更廣泛的受衆羣體(這裏的用戶主要是通過標籤瀏覽)。 – BalusC 2010-07-10 04:07:31
我想這個問題不是應用程序引擎特定的 - 更多 - 我如何將我的jsp頁面的全部內容轉換爲字符串?我是否必須使用StringBuilder方法手動執行此操作,或者是否有辦法在文檔末尾抓取所有推送到PrintWriter中的內容來執行此操作? – user246114 2010-07-10 04:15:33
我已經在其他問題中回答了。 – BalusC 2010-07-10 04:36:00