上一篇博客 sPRingMVC源码分析--国际化LocaleResolver(一)中我们介绍了springMVC提供的国际化的解决方案,接下来我们根据springMVC提供的解决方案来简单的实现一个多语言的支持。
一、基于session的国际化实现
基于Session的国际化实现其实说来也简单,就是在Session中保存语言信息Locale,这样springMVC会从我们提供的多语言配置文件中读取相关语言的信息。
(1)首先我们需要配置springMVC的多语言配置,因为我们打算使用Session来实现,所有对于localeResolver我们要配置其实现类SessionLocaleResolver,在springMVC的配置文件中添加如下配置:
[html] view plain copy print?(2)这里我们提供了一个多语言拦截器LanguageInterceptor,通过这个拦截器设置多语言信息,其实主要的代码就是request.getSession().setAttribute(SessionLocaleResolver.LOCALE_SESSION_ATTRIBUTE_NAME,locale),这样springMVC会根据Locale的信息来获得多语言。
[java] view%20plain copy print?在springMVC的配置文件中配置拦截器
[html] view%20plain copy print?运行结果图:
二、基于Cookie的国际化实现
与上面类似,我们首先创建一个拦截器用来将多语言信息写到Cookie中,这样就可以通过cookie来切换多语言了。
[java] view plain copy print?新闻热点
疑难解答