`
duanfei
  • 浏览: 732249 次
  • 性别: 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的国际化配置

    Spring 2.5 的国际化配置是一项关键功能,它允许应用程序根据用户浏览器的语言设置显示相应的文本。国际化使得软件能够适应全球范围内的用户,提供多语言支持。以下是对标题和描述中涉及知识点的详细解释: 1. **...

    spring 国际化 spring mvc

    Spring MVC 国际化实现详解 在 Spring MVC 框架中,实现国际化是...基于浏览器语言的国际化配置可以实现客户浏览器语言国际化,而基于动态加载的国际化配置可以实现基于请求的国际化配置或基于 Session 的国际化配置。

    Spring国际化案例

    2. **Spring配置**:在Spring的配置文件中,我们需要声明一个`MessageSource` bean,它是处理国际化消息的主要接口。通常我们会使用`ResourceBundleMessageSource`,它可以从.properties资源文件中加载消息。以下是...

    spring国际化实例

    Spring框架是Java开发中的一个核心库,它提供了一个广泛的功能集,包括依赖注入、面向切面编程、数据访问、Web应用程序开发以及我们今天关注的主题——国际化(i18n)。国际化是一个过程,使得软件能够适应不同语言...

    SpringBoot消息国际化配置实现过程解析

    SpringBoot 消息国际化配置实现过程解析 SpringBoot 消息国际化配置实现过程解析是指在 SpringBoot 项目中实现消息国际化配置的过程。该过程主要涉及到消息配置文件的管理、语言信息的设置、LocaleContext 的使用、...

    Spring mvc 国际化

    2. 配置MessageSource Bean:在Spring MVC的配置文件(如springservlet-config.xml)中添加一个MessageSource Bean,这个Bean用来指定国际化资源文件的位置。在该Bean中,需要设置basename属性,其值为基本名称加上....

    spring mvc配置国际化

    总结,Spring MVC的国际化配置涉及到资源文件的创建、`MessageSource`的配置、locale解析器的选择以及在Controller和视图中正确地使用这些资源。通过这个实例,您可以快速地为您的应用程序提供多语言支持,提升用户...

    spring显示国际化信息

    在Spring框架中,国际化(Internationalization,简称i18n)是为支持多语言环境而设计的功能,使得应用程序能够根据用户所在的地域和语言提供相应的显示内容。本示例将详细介绍如何在Spring应用中实现国际化。 首先...

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

    通过这个Spring Boot国际化配置的示例,你可以了解并实践如何为你的应用添加多语言支持,从而为全球用户提供更好的体验。记得根据你的实际需求调整配置,并确保资源文件的键值对与代码中的引用相匹配。此外,还可以...

    spring国际化项目

    在本项目"spring国际化项目"中,我们将深入探讨如何在Spring环境中实现国际化。 首先,我们需要理解国际化的基本概念。国际化不仅仅是翻译文本,它涉及将应用程序中的所有文化特定元素,如日期格式、货币符号、数字...

    Spring实现国际化的一个小例子

    在Spring框架中,实现国际化(Internationalization,简称i18n)是常见的需求,它使得应用程序可以根据用户所在的地区提供不同的语言版本。以下是一个详细的步骤,解释如何在Spring应用中实现国际化。 1. **理解...

    Nacos实现SpringBoot国际化的增强

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

    SpringBoot 配置国际化完整源码

    在Spring Boot应用中,配置国际化是一项重要的任务,它允许我们为不同的地区和语言提供相应的界面和文本。本项目提供了SpringBoot配置国际化的完整源码,方便开发者理解和实践。以下是关于这个主题的详细知识: ...

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

    在这个项目中,我们将探讨如何利用这些技术来实现基于浏览器语言的国际化配置。 1. **Spring Boot的国际化(i18n)支持** Spring Boot通过`MessageSource`接口提供国际化支持。开发者可以创建`messages.properties`...

    spring国际化

    而Spring的国际化(i18n,Internationalization)功能则允许我们为不同地区和语言的用户提供定制的显示内容。 在Spring MVC中实现国际化,主要涉及以下几个关键步骤和概念: 1. **资源文件**:首先,我们需要创建...

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

    本示例项目" Maven + Spring MVC + Mybatis + Velocity + 国际化配置 Demo"提供了一种实用的方法来实现这一目标。以下将详细讲解这个整合实例中的各个关键组件及其相互作用。 1. Maven:Maven 是一个项目管理工具,...

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

    在Spring MVC 3中,国际化是一项重要的功能,它允许我们为不同的地区和语言提供定制的显示内容。在“spring mvc 3 国际化(下)——简单自定义操作”这一主题中,我们将深入探讨如何自定义国际化过程,以满足特定的...

    自己动手在Spring-Boot上加强国际化功能的示例

    本示例将指导你如何在Spring Boot中自定义国际化实现,包括从文件夹中动态加载多个国际化文件、根据用户请求动态设置前端显示的语言,并通过拦截器和注解自动化处理。 首先,让我们回顾一下项目的初始化步骤。在...

    spring mvc 国际化 demo

    2. **配置Spring MVC的国际化** 在Spring MVC的配置文件(如`dispatcher-servlet.xml`)中,我们需要添加一个`ResourceBundleMessageSource` bean,它负责读取和解析资源文件: ```xml ...

Global site tag (gtag.js) - Google Analytics