SpringMVC实现国际化

一. 国际化概述

国际化并不是对内容进行国际化,而是对本身要显示的文字进行国际化,需要在SpringIOC容器中配置国际化资源文件的bean,国际化是具体通过Locale完成。SpringMVC为国际化提供了本地化拦截器和本地化解析器,以便完成通过超链接切换方式完成国际化。

  • 本地化解析器:SessionLocaleResovler
  • 本地化拦截器LocaleChangeInterceptor

二. 通过切换超链接进行国际化
  1. 配置国际化资源文件
username=username
password=password
  1. 配置国际化资源文件的bean
<!-- 配置国际化资源文件的bean -->
	  <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
	  	<property name="basename" value="i18n"></property>
	  </bean>
  1. 配置本地化拦截器和本地化解析器
  <!-- 配置本地化解析器 -->
	  <bean id="localeResolver" class="org.springframework.web.servlet.i18n.SessionLocaleResolver">
	  </bean>
	  
  <!-- 本地化拦截器 -->
  <mvc:interceptors>
  	<bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor"></bean>
  </mvc:interceptors>
  1. 编写前端请求界面
<a href="${pageContext.request.contextPath}/testLocale?locale=zh_CN">中文</a>
	<br>
	<a href="${pageContext.request.contextPath}/testLocale?locale=en_US">English</a>
  1. 编写请求处理器、
@Controller
public class LocaleController {
@RequestMapping("/testLocale")
public String testLocale() {
	return "success";
}
}
  1. 编写success.jsp页面
<fmt:message key="username"></fmt:message>
	<br>
	<fmt:message key="password"></fmt:message>
小结

掌握通过切换超链接完成国际化操作:

  • 在之前的国际化基础上配置SessionLocaleResolver的bean
  • 配置 Interceptor:LocaleChangeInterceptor
  • 需要添加请求参数,参数名称为locale,值为本地化语言,比如zh_CN,表示简体中文,en_US,表示美式英文
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值