springmvc国际化+freemarker整合 一步步走来
来源:互联网 发布:淘宝卖家中心进不去 编辑:程序博客网 时间:2024/06/05 04:20
这里记录一下 ‘打杂’工作的spring国际化 记录一下 同时也是帮助各位朋友!
一,加入两个配置文件,分别是中英文
二,在spring-mvc.xml文件里加入这些配置
<!-- 国际化操作 拦截器 必需配置,可以和其它国际化方式通用 -->
<mvc:interceptors>
<bean id="localeChangeInterceptor" class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor" />
</mvc:interceptors>
<!-- 配置国际化资源文件路径 -->
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename">
<!-- 定义消息资源文件的相对路径 -->
<value>messages/message</value>
</property>
<property name="cacheSeconds" value="1800"></property>
</bean>
<!-- 基于Cookie的本地化解析器 -->
<bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver">
<!-- 设置最大有效时间,如果是-1,则不存储,浏览器关闭后即失效,默认为Integer.MAX_INT-->
<property name="cookieMaxAge" value="1800"/>
<property name="defaultLocale" value="zh_CN"/>
<!-- 设置cookieName名称,可以根据名称通过js来修改设置,也可以像上面演示的那样修改设置,默认的名称为 类名+LOCALE(
即:org.springframework.web.servlet.i18n.CookieLocaleResolver.LOCALE-->
<property name="cookieName" value="Language"></property>
</bean>
<!-- 基于Session的本地化解析器 -->
<!--<bean id="localeResolver" class="org.springframework.web.servlet.i18n.SessionLocaleResolver" />-->
三,在页面上引入 <#import "/base/spring.ftl" as spring/> 提一下 这是spring-webmvc.jar自带的spring.ftl,粘过来用即可,路径为org\springframework\web\servlet\view\freemarker
四,页面上加两个中英文切换的按钮
<a href="${ctx}/language.do?language=zh_CN" class="btn btn-blue"><@spring.message code="Chinese"/></a>
<a href="${ctx}/language.do?language=en" class="btn btn-blue"><@spring.message code="English"/></a>
五,在controller中写入一个方法
@RequestMapping("language")
public ModelAndView language(HttpServletRequest request,HttpServletResponse response){
String language = request.getParameter("language").toLowerCase();
if(language==null||language.equals("")){
return new ModelAndView("redirect:/");
}else{
String[] split = language.split("_");
if(split.length>1){
resolver.setLocale(request, response, new Locale(split[0],split[1]));
}else{
resolver.setLocale(request, response, new Locale(split[0]));
}
}
return new ModelAndView("redirect:/");
}
六,传入key值,这里值得提一下的是,用ApplicationContext接口的getMessage方法,便可返回value,不用去傻傻的去遍历配置文件
- springmvc国际化+freemarker整合 一步步走来
- SpringMVC + FreeMarker 国际化使用方法
- SpringMVC + Freemarker 国际化
- FreeMarker与SpringMVC整合
- FreeMarker与SpringMVC整合
- FREEMARKER与SPRINGMVC整合
- freemarker与springmvc整合
- FreeMarker与SpringMVC整合
- FreeMarker+JSP+SpringMVC整合
- springMVC整合Freemarker例子
- springMVC整合Freemarker例子
- SpringMVC与freemarker整合
- freemarker springmvc整合
- springMVC 整合测试 freemarker
- springMVC整合Freemarker
- springmvc整合freemarker
- SpringMVC整合Freemarker
- freemarker 和 springmvc 整合
- Vue.js常用指令汇总(v-if、v-for等)
- linux ftp服务器配置
- 第十章 多进程服务器(下)
- android文件操作工具类
- Java位运算总结:位运算用途广泛
- springmvc国际化+freemarker整合 一步步走来
- 查找数据库里的blob字段并保存在文件中
- Emoji表情在web端的展示步骤详解!!!
- JavaScript-DOM(document object model)
- Redis 3.0集群原理
- android ipc跨进程通许
- 哈希算法简介
- 在腾讯云中配置ubuntu系统 VPN
- Be the Winner HDU-2509【Nim经典博弈】