Spring boot 国际化实现

  • messages.properties 默认内容,未匹配到的语言
  • messages_lang.properties 统一语法

application.properties配置

# 语言目录及前缀,默认messages也就是在resources根目录下。
spring.messages.basename=i18n/messages
# 当找到匹配的语言就是匹配系统语言,如果不设置false的话messages.properties达不到默认的效果
spring.messages.fallback-to-system-locale=false

使用

@Autowired
private MessageSource messageSource;

// ------------------
/**
 * HttpServletRequest request,Spring MVC直接加这个参数就行
 */
Locale locale = RequestContextUtils.getLocale(request);
String demoValue = messageSource.getMessage("demo.key", null, locale)

这个就匹配到用户需要显示的语言了。

语言参考表(lang)

lang 国家 语言
ar_AE 阿拉伯联合酋长国 阿拉伯文
ar_JO 约旦 阿拉伯文
ar_SY 叙利亚 阿拉伯文
ar_BH 巴林 阿拉伯文
ar_SA 沙特阿拉伯 阿拉伯文
ar_YE 也门 阿拉伯文
ar_EG 埃及 阿拉伯文
ar_SD 苏丹 阿拉伯文
ar_TN 突尼斯 阿拉伯文
ar_IQ 伊拉克 阿拉伯文
ar_MA 摩洛哥 阿拉伯文
ar_QA 卡塔尔 阿拉伯文
ar_OM 阿曼 阿拉伯文
ar 阿拉伯文
ar_KW 科威特 阿拉伯文
ar_LY 利比亚 阿拉伯文
ar_DZ 阿尔及利亚 阿拉伯文
ar_LB 黎巴嫩 阿拉伯文
be 白俄罗斯文
be_BY 白俄罗斯 白俄罗斯文
bg 保加利亚文
bg_BG 保加利亚 保加利亚文
ca_ES 西班牙 加泰罗尼亚文
ca 加泰罗尼亚文
cs 捷克文
cs_CZ 捷克共和国 捷克文
da 丹麦文
da_DK 丹麦 丹麦文
de 德文
de_CH 瑞士 德文
de_AT 奥地利 德文
de_LU 卢森堡 德文
de_DE 德国 德文
de_GR 希腊 德文
el 希腊文
el_CY 塞浦路斯 希腊文
el_GR 希腊 希腊文
en_US 美国 英文
en_SG 新加坡 英文
en_MT 马耳他 英文
en 英文
en_PH 菲律宾 英文
en_NZ 新西兰 英文
en_ZA 南非 英文
en_AU 澳大利亚 英文
en_IE 爱尔兰 英文
en_CA 加拿大 英文
en_IN 印度 英文
en_GB 英国 英文
es_PA 巴拿马 西班牙文
es_VE 委内瑞拉 西班牙文
es_PR 波多黎哥 西班牙文
es_BO 玻利维亚 西班牙文
es_AR 阿根廷 西班牙文
es_SV 萨尔瓦多 西班牙文
es 西班牙文
es_ES 西班牙 西班牙文
es_CO 哥伦比亚 西班牙文
es_PY 巴拉圭 西班牙文
es_EC 厄瓜多尔 西班牙文
es_US 美国 西班牙文
es_GT 危地马拉 西班牙文
es_MX 墨西哥 西班牙文
es_HN 洪都拉斯 西班牙文
es_CL 智利 西班牙文
es_DO 多米尼加共和国 西班牙文
es_CU 古巴 西班牙文
es_UY 乌拉圭 西班牙文
es_CR 哥斯达黎加 西班牙文
es_NI 尼加拉瓜 西班牙文
es_PE 秘鲁 西班牙文
et 爱沙尼亚文
et_EE 爱沙尼亚 爱沙尼亚文
fi_FI 芬兰 芬兰文
fi 芬兰文
fr_BE 比利时 法文
fr_CH 瑞士 法文
fr 法文
fr_LU 卢森堡 法文
fr_FR 法国 法文
fr_CA 加拿大 法文
ga 爱尔兰文
ga_IE 爱尔兰 爱尔兰文
hi_IN 印度 印地文
hi 印地文
hr_HR 克罗地亚 克罗地亚文
hr 克罗地亚文
hu 匈牙利文
hu_HU 匈牙利 匈牙利文
in 印度尼西亚文
in_ID 印度尼西亚 印度尼西亚文
is_IS 冰岛 冰岛文
is 冰岛文
it 意大利文
it_CH 瑞士 意大利文
it_IT 意大利 意大利文
iw_IL 以色列 希伯来文
iw 希伯来文
ja_JP 日本 日文
ko 朝鲜文
ko_KR 韩国 朝鲜文
lt 立陶宛文
lt_LT 立陶宛 立陶宛文
lv 拉托维亚文(列托)
lv_LV 拉脱维亚 拉托维亚文(列托)
mk 马其顿文
mk_MK 马其顿王国 马其顿文
ms_MY 马来西亚 马来文
ms 马来文
mt_MT 马耳他 马耳他文
mt 马耳他文
nl 荷兰文
nl_NL 荷兰 荷兰文
nl_BE 比利时 荷兰文
no_NO_NY 挪威 挪威文
no_NO 挪威 挪威文
no 挪威文
pl_PL 波兰 波兰文
pl 波兰文
pt 葡萄牙文
pt_BR 巴西 葡萄牙文
pt_PT 葡萄牙 葡萄牙文
ro_RO 罗马尼亚 罗马尼亚文
ro 罗马尼亚文
ru_RU 俄罗斯 俄文
ru 俄文
sk 斯洛伐克文
sk_SK 斯洛伐克 斯洛伐克文
sl 斯洛文尼亚文
sl_SI 斯洛文尼亚
sq 阿尔巴尼亚文
sq_AL 阿尔巴尼亚
sr_ME 黑山 塞尔维亚文
sr_BA_#Latn 波斯尼亚和黑山共和国 塞尔维亚文
sr_CS 塞尔维亚及黑山 塞尔维亚文
sr_BA 波斯尼亚和黑山共和国 塞尔维亚文
sr_ME_#Latn 黑山 塞尔维亚文
sr__#Latn 塞尔维亚文
sr_RS 塞尔维亚 塞尔维亚文
sr 塞尔维亚文
sr_RS_#Latn 塞尔维亚 塞尔维亚文
sv_SE 瑞典 瑞典文
sv 瑞典文
th_TH 泰国 泰文
th 泰文
tr 土耳其文
tr_TR 土耳其 土耳其文
uk 乌克兰文
uk_UA 乌克兰 乌克兰文
vi_VN 越南 越南文
vi 越南文
zh 中文
zh_TW 台湾地区 中文
zh_HK 香港 中文
zh_SG 新加坡 中文
zh_CN 中国 中文

你可能感兴趣的:(springboot,i18n)