编者: wRitchie(吴理琪) 来源:http://www.bj9420.com
基于项目的需要,现有的 Spring+SpringMVC+Mybatis 后台框架系
统,需要提供中、英版本,因而在实践中形成此文。
第一步:在 Spring核心配置文件中配置:
classpath:i18n/messageclasspath:i18n/user第二步:创建国际化文件
1、在项目的 resource 目录下,创建 i18n 目录

2、在 i18n 目录下新建 Resource Bundle,如下图:

3、在 Create Resource Bundle 中输入使用的配置文件名,如图

4、点击 OK,即自动生成相应该语言的属性文件(也可以直接手动
新建属性文件)message_en_US.properties、
message_zh_CN.properties,如图

5、.properties 文件格式,KeyValue键值对,采用模块(对象).字段(属性)的方式
object.field=中文值
或
object.field=En value


第三步:Controller 类中定义语言切换方法
@Slf4j@Controller@RequestMapping("i18nController")public class I18nController { @RequestMapping("/locale") public ModelAndView locale(@RequestParam("local") String locale, HttpSes sion session) { ModelAndView mv = new ModelAndView("/index.jsp"); if ("zh".equals(locale)) { Locale locale1 = new Locale("zh","CN"); session.setAttribute(SessionLocaleResolver.LOCALE_SESSION_ATTRIB UTE_NAME,locale1); }else { Locale locale1 = new Locale("en","US"); session.setAttribute(SessionLocaleResolver.LOCALE_SESSION_ATTRIB UTE_NAME,locale1); } return mv;} }@Slf4j@Controller@RequestMapping("i18nController")public class I18nController {@RequestMapping("/locale") public ModelAndView locale(@RequestParam("local") String locale, HttpSession session) { ModelAndView mv = new ModelAndView("/index.jsp"); if ("zh".equals(locale)) { Locale locale1 = new Locale("zh","CN"); session.setAttribute(SessionLocaleResolver.LOCALE_SESSION_ATTRIBUTE_NAME,locale1); }else { Locale locale1 = new Locale("en","US"); session.setAttribute(SessionLocaleResolver.LOCALE_SESSION_ATTRIBUTE_NAME,locale1); } return mv; }}第四步:前端页面
'>中文 |'>English效果图:


附:
一、Java 控制类中的国际化:
RequestContext requestContext = new RequestContext(request);String webTitle= requestContext.getMessage("com.bj9420.web.title");二、Java 常量类中的国际化(若没想到的话,挺费劲的,典型的难
者不会,会者不难)
public class SystemConstant { public static String PLATFORM_TITLE = "com.bj9420.web.title"; public static final Map getSysTypeMap(){ Map map = new TreeMap<>(); map.put("05", "com.bj9420.constant.org.systype.store");//门店 map.put("01", "com.bj9420.constant.org.systype.supplier");//供应商 return map; }}三、JSP页面中的国际化:
至止,基本能解决 SSM 项目中的国际化问题。
本文介绍如何为Spring+SpringMVC+Mybatis项目配置中英文双语支持,包括配置步骤、资源文件创建及语言切换方法。

3565

被折叠的 条评论
为什么被折叠?



