我在SpringBoot应用程序中实现Multilingual,在完成以下配置之后我无法加载属性文件
文件夹名称
的src /主/资源/ I18N /消息
属性文件名
messages_us.properties
在应用程序主类
中@Bean
public LocaleResolver localeResolver() {
SessionLocaleResolver resolver = new SessionLocaleResolver();
resolver.setDefaultLocale(Locale.US);
return resolver;
}
@Bean
public ResourceBundleMessageSource messageSource() {
ResourceBundleMessageSource source = new ResourceBundleMessageSource();
source.setBasenames("i18n/messages");
source.setUseCodeAsDefaultMessage(true);
return source;
}
在控制器
中@RequestMapping("/msg")
public String msg(@RequestHeader("Accept-Language") Locale locale){
return messageSource.getMessage("msg",null,locale);
}
标题
的Accept-Language:US
我得到了这个警告
[36mo.s.c.s.ResourceBundleMessageSource [0; 39m [2m:[0; 39m] MessageSund找不到ResourceBundle [i18n / messages]:无法找到 捆绑基本名称i18n / messages,locale us
答案 0 :(得分:2)
问题是你的目录结构。当您将基本名称指定为i18n/messages
时,框架将查找i18n/messages_en.properties
之类的文件。基本名称是目录AND基本文件名。