如何更改Spring语言环境cookie名称?

问题描述 投票:1回答:3

spring MVC语言环境的cookie默认命名为org.springframework.web.servlet.i18n.CookieLocaleResolver.LOCALE

如何将此名称设置为另一个名称?

spring spring-mvc cookies localization
3个回答
3
投票

可以在localeResolver的配置中设置cookie名称,用于在会话cookie中存储区域设置更改:

<bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver">
    <property name="defaultLocale" value="en"></property>
    <property name="cookieName" value="YOUR_LOCALE_COOKIE_NAME"/>
</bean>

感谢dimitrisli链接到documentation


2
投票

使用Java配置:

@Bean
public HandlerInterceptor localChangeInterceptor(){
    LocaleChangeInterceptor localeInterceptor = new LocaleChangeInterceptor();
    localeInterceptor.setParamName("lang");
    return localeInterceptor;
}

使用XML配置:

 <mvc:interceptors>
    <bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
        <property name="paramName" value="lang" />
    </bean>
  </mvc:interceptors>

Documentation


1
投票

Java配置方式:

@Bean
public LocaleResolver localeResolver() {
    final CookieLocaleResolver cookieLocaleResolver = new CookieLocaleResolver();
    cookieLocaleResolver.setDefaultLocale(Locale.ENGLISH);
    cookieLocaleResolver.setCookieName("YOUR_LOCALE_COOKIE_NAME");
    return cookieLocaleResolver;
}
© www.soinside.com 2019 - 2024. All rights reserved.