`
xttifqqk
  • 浏览: 49186 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

[转]Sprign国际化的三种配置方式

阅读更多

在Spring的国际化配置中,一共有三种描述方式:

第一种:AcceptHeaderLocaleResolver

<bean id="localeResolver" class="org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver"></bean>
默认的参数名为locale主意大小写。里面放的就是你的提交参数。如:en_US,zh_CN之类的,这个时候,你在页面上加一句<a href="?locale=zh_CN">简体中文</a>

第二种:Session

Session的配置如下:
 <bean id="localeResolver" class="org.springframework.web.servlet.i18n.SessionLocaleResolver"></bean> 
在你的处理的Controller中,将提交上来的locale字段信息生成真正的Locale对象,然后将对象保存在Session中,默认 保存的ID是SessionLocaleResolver.LOCALE_SESSION_ATTRIBUTE_NAME
这样,当你的 Session不过期,那么语言种类始终保持正确的说。我一直是这样子用的,我觉得还是Session的好,老外们用了很满意。

第三种:基于Cookie的国际化配置

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

这三种方式都可以解决国际化的问题,

对应的拦截方式:

<bean id="localeChangeInterceptor" class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor" />

在mapping url映射的时候,可以调用这个属性来跳转的时候,进行国际化的拦截。

不过我在使用国际化的时候,没有使用这个拦截方法。

另外最重要的地方,是在调用spring的message的标签。

在Spring MVC中使用<spring:message code="title"/>这样的标签来显示,但是Velocity中用这个方法就读不到值,翻了一天资料才搞定这个问题,使 用#springMessage("title") 这种方式就可以解决问题。

另外需要注意调用Spring.tld,不然标签无法识别。

<%@ taglib prefix="spring" uri="/WEB-INF/spring.tld"%>

总算折腾完国际化的问题了。继续研究关于Controller和MultiActionController

分享到:
评论

相关推荐

    Struts+Hibernate+Sprign 通用分页

    实现了BeanUtil方式的赋值对象值 拥有从Request里面拿实体属性值的工具类 具有实现了数字分页工具栏的分页的功能 可以通过多种方式分页 1,普通的上一页,下一页 2,下拉框 3,比较复杂的数字分页工具栏的分页 通用...

    SpringCloud 全部完整例子

    SpringCloud是中国Java开发者广泛使用的...通过实践这些例子,你可以深入理解SpringCloud的各种核心组件及其使用方式,从而提升你在微服务架构设计和开发中的能力。记得每个示例都要动手实践,以达到最佳的学习效果。

    angular-spring-api:带有Sprign API的角度课程

    4. **表单**: 支持响应式和模板驱动两种方式处理用户输入。 5. **路由**: 管理应用程序中的不同视图和导航。 **Spring框架解析** Spring是一个全面的Java企业级应用开发框架,尤其在构建RESTful API方面表现出色。...

    angular-spring-web:Sprign Web的角度课程

    Angular的核心设计理念是组件化,这意味着你可以将UI拆分为可重用的组件,从而提高代码的复用性和可维护性。此外,Angular的双向数据绑定简化了模型和视图之间的交互,使得状态管理更为轻松。 接下来,我们来看看...

    spring辅助资源包

    在Spring中,CGLIB被用作AOP代理的一种实现方式,当目标对象不支持JDK动态代理时(如接口数量为0),Spring会使用CGLIB来创建代理对象。 3. **commons-logging.jar**: 这是Apache Commons Logging库,它提供了一个...

    SpringMVC+Hibernate+Spring+JSP整合实例

    "SpringMVC+Hibernate+Spring+JSP整合实例"是一个经典的后端技术组合,它涵盖了Java领域中多个核心框架的集成应用,旨在实现数据持久化、业务逻辑处理以及用户界面展示的无缝连接。下面我们将深入探讨这些技术及其...

    Spring Boot+Spring Security+JWT实现给RestApi增加认证控制

    新一代基于Spring Boot、Spring Security、Oauth2等实现的权限控制和认证服务、支持第三方oauth授权和获取资源信息功能等;Spring Boot+Spring Security+JWT实现给RestApi增加认证控制

    spring3集成swagger的jar包

    在本文中,我们将深入探讨如何在Spring 3.2.2.RELEASE项目中集成Swagger,以便为API提供方便的文档化和测试工具。Swagger是一个强大的API框架,它可以帮助开发者轻松地构建、测试和文档化RESTful Web服务。下面,...

    spring-boot-security-jwt:使用Spring Boot + Security + JWT用于REST端点的项目

    发布Tomcat嵌入8.5.15 乔达日期时间2.9.9登录您可以使用两种方式登录: 1-在LoginController中调用端点/ login 格式:JSON { "username" : "user" "password" : "test123"}2-调用SpringSecurity提供的端点/ ...

    SprignBoot中实现文件上传示例代码

    总的来说,Spring Boot提供了方便的API和配置选项来处理文件上传,使得开发者能够轻松地构建支持文件上传功能的Web应用。通过理解上述示例代码,你可以根据项目需求进行适当的修改和扩展,实现更加复杂和安全的文件...

    Spring Cloud_cn.md

    SprignCloud 中文版官方文档 来源:[来自springCloud中文网](https://www.springcloud.cc/),只供学习。如有侵权,会删除

Global site tag (gtag.js) - Google Analytics