Javascript spring i18n LocaleResolver getLocale
处理spring i18n。我在Javascript spring i18n LocaleResolver getLocale,javascript,spring-mvc,internationalization,Javascript,Spring Mvc,Internationalization,处理spring i18n。我在springmvc.xml <bean name="localeChangeInterceptor" class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor"> <property name="paramName" value="lang" /> </bean> <bean name="localeResolver" class="o
springmvc.xml
<bean name="localeChangeInterceptor" class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
<property name="paramName" value="lang" />
</bean>
<bean name="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver">
<property name="defaultLocale" value="en" />
</bean>
如何在控制器上获取区域设置
?或者有什么好主意可以使用i18nJava脚本
提前谢谢
@Controller
public class MyController{
@RequestMapping(value = "/test")
public test(HttpServletRequest request, HttpServletResponse response){
Locale locale = RequestContextUtils.getLocale(request);
System.out.println("Locale >>> " + locale);
}
}
结果:
Locale >>> en
如果您想更改为其他语言环境,在Java中,您可以使用: 字符串anotherLocale=“es”;
RequestContextUtils.getLocaleResolver(请求).setLocale(请求,响应,另一个语言环境) 查看Spring Web MVC参数参考: 支持的方法参数类型
…
当前请求区域设置的
java.util.Locale
,由最具体的可用区域设置解析程序确定,实际上是在Servlet环境中配置的LocaleResolver
这意味着您可以在控制器方法中简单地使用java.util.Locale
参数,Spring MVC将为该参数分配当前解析的区域设置:
@RequestMapping(value = "/{viewName}", method = GET)
public String handle(@PathVariable String viewName, Locale locale) {
return "info/" + locale.getLanguage() + '/' + viewName;
}
另一个版本:Locale=newlocale(“es”);RequestContextUtils.getLocaleResolver(请求).setLocale(请求,响应,区域设置);
Locale >>> en
@RequestMapping(value = "/{viewName}", method = GET)
public String handle(@PathVariable String viewName, Locale locale) {
return "info/" + locale.getLanguage() + '/' + viewName;
}