`

Spring 国际化的支持:Spring MVC Velocity

阅读更多
核心提示:在Spring的国际化配置中,一共有三种描述方式: 第一种:AcceptHeaderLocaleResolver bean id=localeResolver class=org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver/bean 默认的参数名为locale主意大小写。里面放的就是你的提交参数。如:

在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

分享到:
评论

相关推荐

    spring mvc mybatis velocity 示范

    结合使用Spring MVC、MyBatis和Velocity: 在实际项目中,Spring MVC作为控制器层,处理HTTP请求,调用Service层的方法。Service层通常会利用MyBatis的SqlSession执行SQL操作,进行数据的增删改查。查询结果被封装为...

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

    例如,需要在Spring的配置文件中声明对MVC、Mybatis和Velocity的支持,同时设置国际化配置。在Maven的`pom.xml`中,添加相关库的依赖。在完成配置后,通过Maven构建项目,确保所有组件能够正常工作。 通过这个整合...

    spring mvc与velocity整合

    在Spring MVC的配置文件(如`spring-mvc.xml`)中,你需要配置VelocityViewResolver,这是Spring MVC用来解析Velocity模板的类。设置其prefix和suffix属性,分别指定视图前缀和后缀,例如: ```xml ...

    spring-webmvc5.3.6 jar包.rar

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

    spring mvc sitemesh velocity整合

    在本项目中,Spring MVC与两个额外的技术——Sitemesh和Velocity进行了整合,增强了应用的模板渲染和页面布局能力。 Sitemesh 是一个开源的Web应用装饰器框架,主要用于统一网站的页面布局和样式。通过Sitemesh,...

    spring3.0 mvc中文实例教程

    5. **国际化与本地化**:教授如何在Spring MVC中实现应用的多语言支持。 6. **Spring主题**:探讨Spring MVC中如何定制和管理视图主题。 7. **Spring3 MVC与Hibernate 3整合**:讲解如何结合Spring MVC和Hibernate...

    spring-webmvc.rar

    13. **国际化的支持**:通过MessageSource和LocaleResolver,Spring Web MVC可以轻松地实现多语言环境。 14. **模板引擎集成**:Spring可以与多种模板引擎如Thymeleaf、FreeMarker、Velocity等集成,简化视图的创建...

    maven搭建spring mvc velocity+mybatis

    在IT行业中,构建高效、可维护的Web应用是至关重要的,而Maven、Spring MVC、Velocity和MyBatis是实现这一目标的四个关键组件。本文将深入探讨如何使用这些技术来搭建一个完整的Web应用程序。 首先,Maven是Apache...

    springmvc必备架包_hui

    11. **国际化支持**:Spring MVC 提供了对多语言环境的支持,通过消息源(MessageSource)接口,可以方便地实现应用程序的国际化。 在 "springmvc必备架包_hui" 中,可能包含的文件有 Spring MVC 相关的 JAR 包,...

    spring mvc

    14. **Internationalization (i18n) & Localization (l10n)**: Spring MVC 支持多语言和本地化,可以通过消息源(MessageSource)和locale resolver来实现。 15. **Async Support**: Spring MVC 提供异步处理支持,...

    Maven 整合 Spring mvc + Mybatis + Velocity 的实例

    Spring MVC还支持注解驱动的编程,使得配置更加简洁。 **Mybatis** Mybatis是一个轻量级的持久层框架,它允许开发者用SQL语句直接操作数据库。与传统的JDBC相比,Mybatis更易于使用,因为它减少了大量手动配置和...

    spring mvc项目后端源码

    14. **国际化与本地化**:Spring MVC 提供了本地化支持,可以根据用户的语言和地区选择不同的资源文件。 15. **上传文件**:Spring MVC 使用 `MultipartFile` 类处理文件上传,可以通过 `@RequestParam("file") ...

    Spring MVCSpring MVC基础.ppt

    9. **国际化与本地化**:Spring MVC支持多语言环境,通过视图解析器和国际化资源文件,可以轻松实现内容的本地化。 10. **测试支持**:Spring MVC提供了MockMVC工具,方便进行单元测试和集成测试,确保应用的正确性...

    Spring Web MVC入门教程

    同时,Spring Web MVC支持灵活的URL映射策略,能够非常方便地与其他视图技术(如Velocity、FreeMarker等)集成。此外,它还提供了一系列内置的功能,如数据类型转换器、数据格式化器、数据验证器等,极大地简化了...

    Spring+SpringMVC+Mybatis+Velocity+Maven demo

    开发者可以通过注解来简化控制器的编写,同时Spring MVC支持多种视图技术,如JSP、FreeMarker、Velocity等。 **Mybatis**:Mybatis是一个轻量级的持久层框架,它解决了Java开发中的数据库操作问题。Mybatis通过XML...

    Maven + Spring mvc + Mybatis + Velocity 整合实例

    4. Velocity:Velocity是一个Java模板引擎,它专注于视图层的呈现,提供了一种简洁的模板语言,使得开发者可以在HTML中嵌入Java代码来动态生成内容。Velocity模板语言易于学习,能够避免过多的Java代码污染视图,...

    spring mvc框架源码

    9. **Tiles, FreeMarker, Velocity**: Spring MVC支持多种视图技术,如JSP、Thymeleaf、FreeMarker等,这些技术可以方便地构建动态网页。 10. **RESTful风格的支持**: Spring MVC通过@RequestMapping支持RESTful ...

    Spring MVC4.1.6jar包

    5. **视图解析**: Spring MVC提供了多种视图技术的支持,如JSP、FreeMarker、Thymeleaf等。通过配置ViewResolver,可以指定如何从视图名称解析出实际的视图路径。 6. **数据绑定和验证**: Spring MVC支持自动的数据...

    spring框架的MVC

    Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还可以是...

    spring3 mvc+mybatis+velocity+maven

    MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs...

Global site tag (gtag.js) - Google Analytics