为了优化我的应用程序中的一个网页,我需要缓存已包含在主 JSP 中的 JSP 片段。如何为 JSP 片段使用缓存?我遇到了 OSCache,这是一个好方法吗?另外,如果有教程可以发给我。
问问题
741 次
2 回答
1
EhCache 有SimplePageFragmentCachingFilter来缓存 JSP 片段。虽然我使用过 EhCache,但我从未使用过它的 JSP 缓存部分。但我认为它是可靠的,因为图书馆的其他部分是可靠的。
于 2013-12-21T15:17:11.580 回答
1
我session
为每个用户菜单缓存使用范围:
<c:if test="${empty JSPCACHE_menu}">
<c:set var="JSPCACHE_menu" scope="session">
<ul id="user-menu">...</ul>
</c:set>
</c:if>
${JSPCACHE_menu}
使用application
范围和c:if
检查,您可以在所有用户之间缓存值(例如货币汇率):
<c:set var="newCurrencyTS" value="currencyService.newCurrencyTS()"/>
<c:if test="${JSPCACHE_currencyTS.time < newCurrencyTS.time}">
<c:set var="JSPCACHE_currencyWidget" scope="application">
<ul>
<c:for var="i" items="${currencyService.getActualRates()}">
<li>...<li>
</c:for>
</ul>
</c:set>
<c:set var="JSPCACHE_currencyTS" value="${newCurrencyTS}" scope="application"/>
</c:if>
${JSPCACHE_currencyWidget}
您可以将 JSP 片段文件的内容包装到这样的结构中。但是会话的生命周期 - 由(此处为 30 分钟)确定:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
在你的web.xml
.
于 2014-12-16T19:08:31.697 回答