ruoyi-admin/src/main/java/com/ruoyi/web/core/config/I18nConfig.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-admin/src/main/resources/i18n/messages_en_US.properties | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-common/src/main/java/com/ruoyi/common/filter/MyI18nInterceptor.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
ruoyi-admin/src/main/java/com/ruoyi/web/core/config/I18nConfig.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,46 @@ package com.ruoyi.web.core.config; import com.ruoyi.common.filter.MyI18nInterceptor; import lombok.extern.slf4j.Slf4j; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.LocaleResolver; import org.springframework.web.servlet.config.annotation.InterceptorRegistration; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import org.springframework.web.servlet.i18n.LocaleChangeInterceptor; import org.springframework.web.servlet.i18n.SessionLocaleResolver; import java.util.Locale; @Configuration @Slf4j public class I18nConfig implements WebMvcConfigurer { @Bean public LocaleResolver localeResolver() { SessionLocaleResolver slr = new SessionLocaleResolver(); // é»è®¤è¯è¨ slr.setDefaultLocale(Locale.SIMPLIFIED_CHINESE); return slr; } //@Bean //public LocaleChangeInterceptor localeChangeInterceptor() //{ // LocaleChangeInterceptor lci = new LocaleChangeInterceptor(); // // åæ°å // lci.setParamName("lang"); // return lci; //} @Override public void addInterceptors(InterceptorRegistry registry) { // æ³¨åæ¦æªå¨ MyI18nInterceptor myHandlerInterceptor = new MyI18nInterceptor(); InterceptorRegistration loginRegistry = registry.addInterceptor(myHandlerInterceptor); // æ¦æªè·¯å¾ loginRegistry.addPathPatterns("/**"); } } ruoyi-admin/src/main/resources/i18n/messages_en_US.properties
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,37 @@ #\u9519\u8BEF\u6D88\u606F not.null=* Mandatory user.jcaptcha.error=Verification code error user.jcaptcha.expire=The verification code has expired user.not.exists=User does not exist/password error user.password.not.match=User does not exist/password error user.password.retry.limit.count=Password input error {0} times user.password.retry.limit.exceed=Password input error {0} times, account locked for {1} minutes user.password.delete=Sorry, your account has been deleted user.blocked=The user has been banned. Please contact the administrator role.blocked=The role has been banned. Please contact the administrator user.logout.success=Exit successfully length.not.valid=The length must be between {min} and {max} characters user.username.not.valid=*Composed of 2 to 20 Chinese characters, letters, numbers, or underscores, and must start with a non numeric character user.password.not.valid=*5-50 characters user.email.not.valid=Email format error user.mobile.phone.number.not.valid=Mobile number format error user.login.success=Login successful user.register.success=login was successful user.notfound=Please log in again user.forcelogout=Administrator forced exit, please log in again user.unknown.error=Unknown error, please log in again ##\u6587\u4EF6\u4E0A\u4F20\u6D88\u606F upload.exceed.maxSize=The uploaded file size exceeds the limit file size< The maximum allowed file size is: {0}MB ! upload.filename.exceed.length=The maximum length of the uploaded file name is {0} characters ##\u6743\u9650 no.permission=You do not have permission for data. Please contact the administrator to add permission [{0}] no.create.permission=You do not have permission to create data. Please contact the administrator to add permissions [{0}] no.update.permission=You do not have permission to modify data. Please contact the administrator to add permissions [{0}] no.delete.permission=You do not have permission to delete data. Please contact the administrator to add permissions [{0}] no.export.permission=You do not have permission to export data. Please contact the administrator to add permissions [{0}] no.view.permission=You do not have permission to view data. Please contact the administrator to add permissions [{0}] ruoyi-admin/src/main/resources/i18n/messages_zh_CN.properties
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,37 @@ #éè¯¯æ¶æ¯ not.null=* å¿ é¡»å¡«å user.jcaptcha.error=éªè¯ç é误 user.jcaptcha.expire=éªè¯ç 已失æ user.not.exists=ç¨æ·ä¸åå¨/å¯ç é误 user.password.not.match=ç¨æ·ä¸åå¨/å¯ç é误 user.password.retry.limit.count=å¯ç è¾å ¥é误{0}次 user.password.retry.limit.exceed=å¯ç è¾å ¥é误{0}次ï¼å¸æ·éå®{1}åé user.password.delete=对ä¸èµ·ï¼æ¨çè´¦å·å·²è¢«å é¤ user.blocked=ç¨æ·å·²å°ç¦ï¼è¯·è系管çå role.blocked=è§è²å·²å°ç¦ï¼è¯·è系管çå user.logout.success=éåºæå length.not.valid=é¿åº¦å¿ é¡»å¨{min}å°{max}个å符ä¹é´ user.username.not.valid=* 2å°20个æ±åãåæ¯ãæ°åæä¸åçº¿ç»æï¼ä¸å¿ 须以鿰åå¼å¤´ user.password.not.valid=* 5-50个å符 user.email.not.valid=é®ç®±æ ¼å¼é误 user.mobile.phone.number.not.valid=ææºå·æ ¼å¼é误 user.login.success=ç»å½æå user.register.success=注åæå user.notfound=è¯·éæ°ç»å½ user.forcelogout=管çå强å¶éåºï¼è¯·éæ°ç»å½ user.unknown.error=æªç¥é误ï¼è¯·éæ°ç»å½ ##æä»¶ä¸ä¼ æ¶æ¯ upload.exceed.maxSize=ä¸ä¼ çæä»¶å¤§å°è¶ åºéå¶çæä»¶å¤§å°ï¼<br/>å 许çæä»¶æå¤§å¤§å°æ¯ï¼{0}MBï¼ upload.filename.exceed.length=ä¸ä¼ çæä»¶åæé¿{0}个å符 ##æé no.permission=æ¨æ²¡ææ°æ®çæéï¼è¯·è系管çåæ·»å æé [{0}] no.create.permission=æ¨æ²¡æåå»ºæ°æ®çæéï¼è¯·è系管çåæ·»å æé [{0}] no.update.permission=æ¨æ²¡æä¿®æ¹æ°æ®çæéï¼è¯·è系管çåæ·»å æé [{0}] no.delete.permission=æ¨æ²¡æå 餿°æ®çæéï¼è¯·è系管çåæ·»å æé [{0}] no.export.permission=æ¨æ²¡æå¯¼åºæ°æ®çæéï¼è¯·è系管çåæ·»å æé [{0}] no.view.permission=æ¨æ²¡ææ¥çæ°æ®çæéï¼è¯·è系管çåæ·»å æé [{0}] ruoyi-common/src/main/java/com/ruoyi/common/filter/MyI18nInterceptor.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,41 @@ package com.ruoyi.common.filter; import lombok.extern.slf4j.Slf4j; import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.Locale; @Slf4j public class MyI18nInterceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { final String key = "language"; String language = "en_US";//request.getHeader(key); // åç«¯ä¼ éçlanguageå¿ é¡»æ¯zh-CNæ ¼å¼çï¼ä¸é´ç-å¿ é¡»è¦å®æ´ï¼ä¸è½åªä¼ ézhæen log.info("å½åè¯è¨={}",language); Locale locale = new Locale(language.split("_")[0],language.split("_")[1]); // è¿æ ·èµå¼ä»¥åï¼MessageUtils.messageæ¹æ³å°±ä¸ç¨ä¿®æ¹äº LocaleContextHolder.setLocale(locale); return true; } /** * 请æ±å¤çä¹åè¿è¡è°ç¨ï¼ä½æ¯å¨è§å¾è¢«æ¸²æä¹åï¼Controlleræ¹æ³è°ç¨ä¹åï¼ */ @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) { } /** * 卿´ä¸ªè¯·æ±ç»æä¹å被è°ç¨ï¼ä¹å°±æ¯å¨DispatcherServlet 渲æäºå¯¹åºçè§å¾ä¹åæ§è¡ï¼ä¸»è¦æ¯ç¨äºè¿è¡èµæºæ¸ çå·¥ä½ï¼ */ @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) { } }