Closed xxw1754352621 closed 5 years ago
// Special handling of default encoding
if (format.equals("java.properties")) {
String bundleName = toBundleName(baseName, locale);
final String resourceName = toResourceName(bundleName, "properties");
省略
}
//获取
string toBundleName(){
if (variant != "") {
sb.append(language).append('_').append(country).append('_').append(variant);
} else if (country != "") {
sb.append(language).append('_').append(country);
} else {
sb.append(language);
}
省略
}
因为locale如果客户端没有传,则采用机器和JDK设置的,如果根据这两个参数找不到
对于web项目的local设置,可以在区域解析器哪里设置,然后添加到拦截器,通知对请求设置默认可以识别的local
参考: https://blog.csdn.net/u012834750/article/details/79315968
1.默认bundle的前缀名字,messages,其他可以寻找类路径下的文件 https://docs.spring.io/spring-boot/docs/2.1.5.RELEASE/reference/htmlsingle/#boot-features-internationalization
2.设置JDK默认语言和默认区域 启动时指定参数-Duser.language=zh -Duser.region=CN