1.在ruoyi-common模块下添加子模块ruoyi-common-i18n
2.先看下国际化包的pom.xml
因为后续考虑会将国际化语言配置文件内容加载到redis中去,所以此处预留引入了redis相关的依赖,
注意:这是属于子模块,不作为单独项目运行,独立运行的模块都是基于SpringMVC相关的拦截来处理。如自定义验证表演,和自定义标签,都需要响应的处理。
所以这里会引入spring-boot-starter-web依赖,虽然不会重复依赖,为了使结构清晰,在引用国际化模块时,我会排除国际化包引入的spring-boot-starter-web依赖。后续会截图说明。
3.工程目录结构
4.因为ruoyi-springCloud版本是基于Nacos读取配置文件,所以在在配置类编写时,读取国际化配置文件,可以相对比较灵活。以下是介绍下比较关键的几个类
4.1 I18nUtil,国际化工具类,主要用于根据key和语言进行国际化语言转换
package com.ruoyi.common.i18n.utils; import com.ruoyi.common.constant.Constants; import com.ruoyi.common.redis.service.RedisService; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.TokenUtil; import org.springframework.context.MessageSource; import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.stereotype.Component; import org.springframework.web.context.request.RequestAttributes; import org.springframework.web.c