SpringMVC(十)国际化
2018-07-13 本文已影响0人
leeqico
一、国际化概述
默认情况下,SpringMVC 根据 Accept-Language 参数 判断客户端的本地化类型。
当接受到请求时,SpringMVC 会在上下文中查找一个本地化解析器(LocalResolver),找到后使用它获取请求 所对应的本地化类型信息。
SpringMVC 还允许装配一个动态更改本地化类型的拦截器,这样通过指定一个请求参数就可以控制单个请求的本地化类型。
二、本地化解析器和本地化拦截器
SessionLocaleResolver &LocaleChangeInterceptor 工作原理
![](https://img.haomeiwen.com/i2058461/dbea1ba4734bb08c.png)
AcceptHeaderLocaleResolver:根据 HTTP 请求头的 Accept-Language 参数确定本地化类型,如果没有显式定义 本地化解析器, SpringMVC 使用该解析器。
CookieLocaleResolver:根据指定的 Cookie 值确定本地化类型
SessionLocaleResolver:根据 Session 中特定的属性确定本 地化类型
LocaleChangeInterceptor:从请求参数中获取本次请求对应的本地化类型。
![](https://img.haomeiwen.com/i2058461/5ba2ec1a9487a4b7.png)
![](https://img.haomeiwen.com/i2058461/1e6617f932655a2c.png)
![](https://img.haomeiwen.com/i2058461/d8b4b309219ab6a1.png)
![](https://img.haomeiwen.com/i2058461/5b41a802b4437017.png)
![](https://img.haomeiwen.com/i2058461/0561160deaed3d73.png)
![](https://img.haomeiwen.com/i2058461/fcf4dbfa683e505b.png)