`
duanfei
  • 浏览: 720074 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Spring国际化动态配置

 
阅读更多

代码下载

http://pan.baidu.com/s/1sjNQmfF

 

Maven依赖

 

<properties>

        <springframework>4.0.5.RELEASE</springframework>

    </properties>

    <dependencies>

        <!-- Spring web mvc -->

        <dependency>

            <groupId>org.springframework</groupId>

            <artifactId>spring-webmvc</artifactId>

            <version>${springframework}</version>

        </dependency>

    </dependencies>

 在Spring应用中,国际化的配置比较简单,下面四步完成国际化的快速配置

 

第一步,配置messageSource和localeResolver

 

<!-- 配置国际化资源文件路径 -->

    <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">

        <property name="basename">

            <!-- 定义消息资源文件的相对路径 -->

            <value>messages/message</value>

        </property>

    </bean>

    <!-- 基于Cookie的本地化解析器 -->

     <bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver">

       <property name="cookieMaxAge" value="604800"/>

       <property name="defaultLocale" value="zh_CN"/>

       <property name="cookieName" value="Language"></property>

     </bean>

    <!-- 基于Session的本地化解析器 -->

    <!--<bean id="localeResolver" class="org.springframework.web.servlet.i18n.SessionLocaleResolver

 第二步,编写message_*.properties

 

message_en.properties

 

hi=hello

something=The People's Republic of China

Chinese=Chinese

English=English

index=Index

welcome=Welcome

OtherPage=Other Page

 

 

message_zh_CN.properties(汉字已转成unicode码)

 

hi=\u4F60\u597D

something=\u4E2D\u534E\u4EBA\u6C11\u5171\u548C\u56FD

Chinese=\u4E2D\u6587

English=\u82F1\u6587

OtherPage=\u5176\u4ED6\u9875\u9762

index=\u9996\u9875

welcome=\u6B22\u8FCE

 第三步,页面引入spring标签库

 

引入

 

<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> 

 使用

 

 

<spring:message code="welcome"></spring:message>

 第四步,切换语言

 

 

    //@Autowired SessionLocaleResolver resolver;

     

    /**

     * 语言切换

     */

    @RequestMapping("language")

    public ModelAndView language(HttpServletRequest request,HttpServletResponse response,String language){

         

        language=language.toLowerCase();

        if(language==null||language.equals("")){

            return new ModelAndView("redirect:/");

        }else{

            if(language.equals("zh_cn")){

                resolver.setLocale(request, response, Locale.CHINA );

            }else if(language.equals("en")){

                resolver.setLocale(request, response, Locale.ENGLISH );

            }else{

                resolver.setLocale(request, response, Locale.CHINA );

            }

        }

         

        return new ModelAndView("redirect:/");

    } 

 已完成国际化的配置,其中请注意SessionLocaleResolver和CookieLocaleResolver的区别,很显然,通过Session只能对当前的会话有效,Cookie则对Cookie有效期内的会话都有效。在使用Cookie的时候,需要设置Cookie的过期时间,否则关闭浏览器之后,Cookie即失效了,没有达到目的。当然,也可以保存用户的语言设置信息到数据库,用户登录之后即可将语言改变成用户设置的语言。

 

 

  • 大小: 161.5 KB
分享到:
评论

相关推荐

    Spring2.5的国际化配置

    Spring2.5的国际化配置 基于浏览器语言的国际化配置 使用Spring的MVC,并且配置中有配置Resource文件 &lt;!-- 资源文件绑定器 --&gt; &lt;bean id="messageSource" class="org.springframework.context.support....

    Spring mvc 国际化

    Spring MVC 国际化的配置方法及使用,希望能对大家的学习、工作有帮助。

    Nacos实现SpringBoot国际化的增强

    一. 概述 阅读本文之前,你应该了解过SpringBoot的国际化实现与原理,在这里简单介绍下: 1. 国际化 国际化...所以通俗来讲,国际化就是为每种语言配置一套单独的资源文件,保存在项目中,由系统根

    spring mvc配置国际化

    springmvc配置国际化实例,超简单,下载即可用,欢迎下载

    Spring Boot 国际化(i18n)配置demo.zip

    Spring Boot 国际化(i18n)配置demo,该demo下载即可正常使用,本案例仅供学习参考。

    Maven + Spring mvc + Mybatis + Velocity +国际化配置 demo

    Maven + Spring mvc + Mybatis + Velocity +国际化配置 整合实例,之前上传的整合 Demo,修改了一些问题,所以重新上传了一个

    spring boot+JPA+easyUI 实现基于浏览器语言的国际化配置

    spring boot+JPA+easyUI 实现基于浏览器语言的国际化配置

    基于SpringMVC国际化资源配置方式Demo

    基于SpringMVC国际化资源配置方式Demo 详细参考:http://blog.csdn.net/stemq/article/details/53141004

    SpringMVC +Mybatis+Spring+oscache配置文件

    springmvc最全的配置文件资料,springMVC包含json、xml、文件下载、静态资源配置、日志拦截器、freeMarker、错误日志、国际化等各种配置

    SpringBoot 国际化配置,SpringBoot Locale 国际化

    NULL 博文链接:https://fanshuyao.iteye.com/blog/2414640

    Spring Boot 全局配置国际化时区转换

    序列化参数的时候,自动将全球用户所在时区的时间转为服务器时区的时间;反序列化的时候,自动将服务器时区的时间转为全球用户所在时区的时间

    Spring 3 MVC 国际化 ResourceBundleMessageSource spring:message

    国际化配置 易扩展。 error_messages_en.properties error_messages_zh.properties 没有库文件,maven配好了会自动加载库文件。也可自己搭建好,拷贝文件过去运行。可参考http://www.docin.com/p-467977489.html

    Spring框架.ppt

    向Spring 框架提供上下文信息,包括企业服务,如 JNDI、EJB、电子邮件、国际化、校验和调度等。 Spring AOP。通过配置管理特性,可以很容易地使 Spring 框架管理的任何对象支持 AOP。Spring AOP 模块直接将面向方面...

    编程语言+JAVAspring+国际化+多语言支持

    它介绍了JAVAspring的国际化的概念、原理和作用,以及如何使用JAVAspring的国际化来实现多语言支持,包括资源文件、区域设置、消息解析、日期格式、货币格式等内容,以及一些配置文件和注解的用法。

    spring security国际化及UserCache的配置和使用

    主要介绍下国际化的配置及UserCache的配置及使用教程,感兴趣的朋友参考下实现代码吧

    Springmvc国际化自动配置代码实现

    主要介绍了Springmvc国际化自动配置代码实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    Spring Boot2.X国际化文件编写配置

    主要介绍了Spring Boot2.X国际化文件编写配置,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    springcloud.zip

    全链路traceId追踪 velocity 前端模板 mybatis, pageHelper (分页), druid (连接池) redis(序列化采用的是jdk默认序列化方案) slf4j & logback(及其配置) 国际化配置 全局错误信息catch 线程池 服务健康检查, 服务...

    springMvc+Mybatis+spring3.0+oscache配置文件

    最全的配置文件资料,springMvc包含josn、xml、文件下载、静态资源配置、日志拦截器、freeMarker、错误日志、国际化等各种配置

    spring jar 包详解

    包含国际化、标签、Theme、视图展现的FreeMarker、JasperReports、Tiles、Velocity、 XSLT相关类。当然,如果你的应用使用了独立的MVC框架,则无需这个JAR文件里的任何类。 (13) spring-mock.jar 这个jar文件包含...

Global site tag (gtag.js) - Google Analytics