在Spring MVC中缓存页面

时间:2014-08-28 07:16:12

标签: spring-mvc caching

我使用拦截器来缓存一些很少更新的页面。效果很好,这是代码:

<bean class="org.springframework.web.servlet.mvc.WebContentInterceptor">
<property name="cacheSeconds" value="2592000"/>
            <property name="useExpiresHeader" value="true"/>
            <property name="useCacheControlHeader" value="true"/>
            <property name="useCacheControlNoStore" value="true"/>
            <property name="cacheMappings">
                <props>
                    <prop key="/my/**">0</prop>
                    <prop key="/login">0</prop>
                    <prop key="/logout">0</prop>
                    <prop key="/change-language">0</prop>
                </props>
            </property>
        </bean>

基本上,它说明了以下内容:缓存除cacheMapping部分之外的所有页面。但我有一些问题 - 如果更改语言,请求本身不会被缓存,但在实际更改后我只是重定向到当前页面,如果此页面被缓存(通过以前的设置) - 用户无法看到更改。我尝试在标题中发送no-cache(在重定向请求中),但似乎拦截器的设置有更多的优先级...

有什么建议我该如何解决?提前谢谢。

0 个答案:

没有答案