-默认情况下,springmvc会根据Accept-Language参数判断客户端的本地化类型
-当接收到请求时,springmvc会在上下文中查找一个本地化解析器(LocalResolver)
找到后使用它获取请求所对应的本地化类型信息
-springmvc还允许装配一个动态更改本地化类型的拦截器,通过指定一个请求参数就
可以控制单个请求的本地化类型
AcceptHeaderLocaleResolver:根据HTTP请求头的Accept-Language参数确定本地化类型,
如果没有显示定义本地化解析器,springmvc使用该解析器
CookieLocaleResolver:根据指定的Cookie值确定本地化类型
SessionLocaleResolver:根据Session中特定属性确定本地化类型
LocaleChangeInterceptor:从请求参数中获取本次请求对应的本地化类型
package com.hous.crud.controller; import java.util.Locale; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.support.ResourceBundleMessageSource; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class I18nController { @Autowired private ResourceBundleMessageSource messageSource; @RequestMapping("/i18n") public String testI18n(Locale locale) { String value = messageSource.getMessage("i18n.user", null, locale); System.out.println("国际化:" + value); return "i18n"; } }
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd"> <!-- 自动扫描bean --> <context:component-scan base-package="com.hous.crud"></context:component-scan> <!-- 配置视图解析器 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"></property> <property name="suffix" value=".jsp"></property> </bean> <!-- 解决静态资源路径问题 --> <mvc:default-servlet-handler/> <mvc:annotation-driven conversion-service="conversionService"/> <!-- 将自定义的转换器注册到springmvc上下文中 org.springframework.context.support.ConversionServiceFactoryBean org.springframework.format.support.FormattingConversionServiceFactoryBean --> <bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean"> <property name="converters"> <set> <ref bean="employeeConverter"/> </set> </property> </bean> <!-- 配置国际化 --> <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource"> <property name="basename" value="i18n"></property> </bean> <!-- 配置SessionLocaleResolver --> <bean id="localeResolver" class="org.springframework.web.servlet.i18n.SessionLocaleResolver"></bean> <!-- 配置LocaleChangeInterceptor --> <mvc:interceptors> <bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor"/> </mvc:interceptors> <!-- <mvc:view-controller path="/i18n"/> --> <mvc:view-controller path="/i18n2"/> </beans>
参考:http://www.cnblogs.com/liukemng/p/3750117.html
相关推荐
在C# WinForm应用开发中,国际化(Internationalization)是一个重要的功能,允许应用程序适应不同语言和文化环境。本文将深入探讨如何实现C# WinForm应用的国际化,包括菜单国际化和资源国际化。 首先,我们需要...
在Android应用开发中,为了使应用能够适应全球市场,国际化的支持是必不可少的。"Android 一键国际化"是一个针对Android Studio的高效插件,旨在帮助开发者便捷地为应用添加多语言支持,尤其对于那些需要快速扩展到...
阅读本文之前,你应该了解过SpringBoot的国际化实现与原理,在这里简单介绍下: 1. 国际化 国际化(internationalization),又称为i18n(因为这个单词从i到n有18个英文字母,因此命名)。对于某些应用系统而言,它...
### C#语言国际化方法 #### 一、引言 随着全球化的不断推进,软件产品和服务越来越多地面向国际用户。为了适应不同国家和地区用户的语言习惯,软件的多语言支持变得尤为重要。C#作为一种广泛使用的编程语言,在...
《Kiwi国际化全流程解决方案》 在当今全球化的背景下,软件产品的国际化和本地化已经成为不可或缺的环节,特别是对于JavaScript开发者来说,理解并掌握这一流程至关重要。本文将深入探讨Kiwi项目提供的国际化全流程...
国际化标签库是一种软件开发工具,主要用于支持多语言环境下的应用程序。在现代软件开发中,特别是在全球范围内使用的产品或服务中,支持多种语言是至关重要的。国际化标签库提供了一种标准化的方式来管理和显示各种...
在IT行业中,"国际化"(Internationalization)是一个重要的概念,特别是在开发支持多语言的应用程序时。这个过程涉及设计和构建应用程序的方式,使得它可以适应不同地区的文化、语言和格式要求。"file input 按钮...
JavaScript(简称JS)国际化(i18n,国际化英文单词“internationalization”的缩写)是为网站或应用程序提供多语言支持的过程。这个过程涉及到将文本、日期、数字和其他文化特定的元素从源语言(通常是英语)转换成...
Spring MVC 国际化实现详解 在 Spring MVC 框架中,实现国际化是...基于浏览器语言的国际化配置可以实现客户浏览器语言国际化,而基于动态加载的国际化配置可以实现基于请求的国际化配置或基于 Session 的国际化配置。
国际化字符转码是IT领域中一个重要的概念,特别是在软件开发和网页设计中,因为全球化的市场需求使得软件和服务需要支持多种语言和字符集。这个过程涉及到将不同编码格式的字符转换成统一的标准,以便在不同的系统和...
JavaScript(简称JS)是网页开发中的重要脚本语言,它为开发者提供了丰富的功能,其中之一就是实现国际化(i18n,Internationalization)。国际化是让软件能够适应不同地区、语言和文化背景的重要特性,使得应用程序...
Java 实现国际化是一种重要的软件开发技术,特别是在构建多语言支持的应用程序时。国际化(i18n)使得软件能够适应不同国家和地区的语言环境,包括中文和英文。在这个主题中,我们将深入探讨如何使用Java和JSP进行...
在IT行业中,国际化(i18n,Internationalization)是一个重要的概念,特别是在软件开发领域,它涉及使软件能够适应不同语言和地区的需求。Java作为一种广泛使用的编程语言,提供了强大的国际化支持。本篇将深入探讨...
Dojo 是一个强大的 JavaScript 库,它提供了丰富的功能,包括对国际化的支持。在Dojo中,国际化(i18n)使得应用可以适应不同语言和文化环境,从而为全球用户提供一致的体验。以下是Dojo国际化的主要方面: 一、...
在Android应用开发中,为了使应用能够适应全球不同的语言环境,开发者通常会采用资源国际化(i18n,Internationalization)技术。这个过程涉及到将应用中的文本和图片资源分离出来,以便根据不同地区创建对应的翻译...
在IT行业中,"国际化"(Internationalization,通常缩写为i18n)是指设计和开发软件或网站,使其能够适应不同地区的语言和文化习俗。H5(HTML5)是现代网页开发的标准,它提供了丰富的功能和接口,使得实现国际化变...
### 国际化软件概论:软件国际化 #### 一、引言 在全球化的背景下,随着信息技术的迅猛发展,软件产业面临着前所未有的挑战与机遇。软件不仅需要满足本地市场需求,还要适应不同国家和地区的需求,这就催生了软件...
SpringBoot 消息国际化配置实现过程解析 SpringBoot 消息国际化配置实现过程解析是指在 SpringBoot 项目中实现消息国际化配置的过程。该过程主要涉及到消息配置文件的管理、语言信息的设置、LocaleContext 的使用、...
在SSM框架上实现国际化和多语言功能,可以使得应用程序能够适应不同国家和地区用户的语言需求,提升用户体验。以下将详细介绍如何在SSM框架中实现这一功能。 首先,我们需要理解“国际化”(Internationalization)...
前段页面的国际化,运用jquery-i18next js做国际化处理,i18n实现前端国际化,页面的多语言切换,本例切换了中英文,运用cookie存取使得刷新页面仍然保持当前语言 1、通过请求不同的语言文件,达到国际化前端的效果...