酷站网官网,莱芜庞允盟,正规app软件开发费用,做营销型网站哪家好配置文件 spring: messages:                 basename: il8n/messages # 配置国际化资源文件路径                 fallback-to-system-locale: true # 是否使用系统默认的语言环境作为备选项 国际化配置 import org.springframework.context.annotation.Bean; import org.spr…配置文件 spring:         messages:                 basename: il8n/messages # 配置国际化资源文件路径                 fallback-to-system-locale: true # 是否使用系统默认的语言环境作为备选项 国际化配置 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.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import org.springframework.web.servlet.i18n.LocaleChangeInterceptor; /** * 国际化配置 */ Configuration public class I18nlocaleConfig implements WebMvcConfigurer{ /** * 默认解析器 其中locale表示默认语言 */ Bean public LocaleResolver localeResolver() { return new MyLocaleResolver(); } Bean public LocaleChangeInterceptor localeChangeInterceptor() { LocaleChangeInterceptor localeChangeInterceptor  new LocaleChangeInterceptor(); localeChangeInterceptor.setParamName(Accept-Language); return localeChangeInterceptor; } Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(localeChangeInterceptor()); } } 参数解析 import org.apache.commons.lang3.StringUtils; import org.springframework.web.servlet.LocaleResolver; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.Locale; /** * 参数解析 */ public class MyLocaleResolver implements LocaleResolver { Override public Locale resolveLocale(HttpServletRequest request) {// 从 request 域中读取传过来的参数 String l  request.getHeader(Accept-Language); // 声明 Locale 为默认语言显示 Locale locale  Locale.getDefault(); // 判断传入参数是否为空if (!StringUtils.isEmpty(language)  StringUtils.contains(language,_)){ // 将传过来的参数通过下划线分割获取到地区(zh)即代码(CN) String[] split  l.split(_); // 进行赋值 locale  new Locale(split[0],split[1]); } // 返回 return locale; } Override public void setLocale(HttpServletRequest request, HttpServletResponse response, Locale locale) { } } ApplicationEvent import com.zzdy.recharge.il8n.utils.MessageUtils; import org.springframework.context.ApplicationListener; import org.springframework.context.MessageSource; import org.springframework.context.event.ContextRefreshedEvent; import org.springframework.stereotype.Component; import javax.annotation.Resource; Component public class ApplicationEvent implements ApplicationListenerContextRefreshedEvent { Resource protected MessageSource messageSource; Override public void onApplicationEvent(ContextRefreshedEvent event) { MessageUtils.setMessageSource(messageSource); } } MessageUtils import org.springframework.context.MessageSource; import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.context.support.ResourceBundleMessageSource;  public class MessageUtils extends ResourceBundleMessageSource { private static MessageSource messageSource; public static void setMessageSource(MessageSource source){ messageSourcesource; } public MessageUtils() { super(); } /** * 获取单个国际化翻译值 */ public static String get(String pvsKey) { try { return messageSource.getMessage(pvsKey, null, LocaleContextHolder.getLocale()); } catch (Exception e) { return pvsKey; } } /** * 获取单个国际化翻译值 */ public static String get(String pvsKey,Object ... pvParams) { try { return messageSource.getMessage(pvsKey, pvParams, LocaleContextHolder.getLocale()); } catch (Exception e) { return pvsKey; } } } 运行 import com.zzdy.recharge.il8n.utils.MessageUtils; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; RestController RequestMapping(recharge/i18n) public class GreetingController { GetMapping(/greeting)   public String greeting() {         return MessageUtils.get(not.null);   } } 运行截图 
中文 英文