spring mvc 3 国际化(上)——基础使用

spring mvc 国际化的基本使用

基本使用步骤

 

1.在spring的配置文件里加入

    <!-- Register the welcome.properties -->
    <bean id="messageSource"
          class="org.springframework.context.support.ResourceBundleMessageSource">
        <!-- welcome为文件的前缀 ,message为文件夹 -->
        <property name="basenames" value="message/welcome"/>
        <property name="defaultEncoding" value="utf8" />
    </bean>

 

2.放入资源文件

message/welcome_en.properties

welcome.springmvc = english title

message/ welcome_zh.properties

welcome.springmvc = chongwen title

 

3.在jsp里使用

<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<h3>
    welcome.springmvc : <spring:message code="welcome.springmvc" text="default text" />
</h3>

 

4.结束

上面3步就实现了spring的项目的国际化,默认使用的是头信息里的

Accept-Language:zh-CN,zh;q=0.8

 来判断语言,(决定权在浏览器)

 

使用cookie或session来判断用户的语言

 

1.使用cookie

在spring配置文件中加入:

   <bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver">
        <property name="defaultLocale" value="en"/>
    </bean>

 这是决定使用cookie来存储用户的语言,里面还可以配置用户的默认语言(也可以不配置)。

 

2.使用session

    <bean id="localeResolver"
    class="org.springframework.web.servlet.i18n.SessionLocaleResolver">
    <property name="defaultLocale" value="en"/>
    </bean>

 

 3.使用用户浏览器的语言(默认的采用的方法)

 <!--这个就是使用的http头信息里面的接收语言来判断用户的语言   -->
    <bean id="localeResolver"
    class="org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver">
    </bean>

 

修改用户语言

1.使用

spring mvc的配置文件中插入

  <mvc:interceptors>
    <bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
    <property name="paramName" value="changeparam"/>
    </bean>
    </mvc:interceptors>

 

这样就访问 http://localhost:8080?changeparam=en 就可以修改了

 

2.注意事项

使用浏览器来判断用户语言的方法不能修改,只有在使用Cookie和session的时候才可以修改用户语言。

 

代码中获取用户语言

 

request.getLocale()

 

 结束

spring mvc 3 国际化(下)——简单自定义操作

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(spring,spring mvc,国际化,i18n)