史上最佳springboot Locale 國際化方案
1、國際化資源
使用IDEA創(chuàng)建資源組
2、編寫配置
application.yml
增加國際化目錄配置
增加配置類 從請求頭獲取多語言關(guān)鍵字
/** * 國際化配置 * * @author Lion Li */ @Configuration public class I18nConfig { @Bean public LocaleResolver localeResolver() { return new I18nLocaleResolver(); } /** * 獲取請求頭國際化信息 */ static class I18nLocaleResolver implements LocaleResolver { @NotNull @Override public Locale resolveLocale(HttpServletRequest httpServletRequest) { String language = httpServletRequest.getHeader("content-language"); Locale locale = Locale.getDefault(); if (StrUtil.isNotBlank(language)) { String[] split = language.split("_"); locale = new Locale(split[0], split[1]); } return locale; } @Override public void setLocale(@NotNull HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Locale locale) { } } }
3、用法詳解
在 Header 請求頭 增加上下文語言參數(shù) content-language
參數(shù)需與國際化配置文件后綴對應(yīng)
如 zh_CN en_US 等
4、測試
編寫測試類
/** * 測試國際化 * * @author Lion Li */ @RestController @RequestMapping("/demo/i18n") public class TestI18nController { @Autowired private MessageSource messageSource; /** * 通過code獲取國際化內(nèi)容 * code為 messages.properties 中的 key * * 測試使用 user.register.success */ @GetMapping() public String get(String code) { return messageSource.getMessage(code, new Object[]{}, LocaleContextHolder.getLocale()); } }
測試接口
到此這篇關(guān)于springboot Locale 國際化方案的文章就介紹到這了,更多相關(guān)springboot 國際化內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java中調(diào)用GDAL DLL的實現(xiàn)方法
本篇文章是對java中調(diào)用GDAL DLL的實現(xiàn)方法進行了詳細的分析介紹,需要的朋友參考下2013-05-05SpringBoot優(yōu)先加載指定Bean的實現(xiàn)
SpringBoot框架在啟動時可以自動將托管的Bean實例化,一般情況下它的依賴注入特性可以正確處理Bean之間的依賴關(guān)系,無需手動指定某個 Bean優(yōu)先創(chuàng)建實例,文中有詳細的代碼示例,需要的朋友可以參考下2023-05-05springboot+mybatis+redis 二級緩存問題實例詳解
Mybatis默認沒有開啟二級緩存,需要在全局配置(mybatis-config.xml)中開啟二級緩存。本文講述的是使用Redis作為緩存,與springboot、mybatis進行集成的方法。需要的朋友參考下吧2017-12-12Elasticsearch中FST與前綴搜索應(yīng)用實戰(zhàn)解析
這篇文章主要為大家介紹了Elasticsearch中FST與前綴搜索應(yīng)用實戰(zhàn)解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-08-08Java基于LoadingCache實現(xiàn)本地緩存的示例代碼
本文主要介紹了Java基于LoadingCache實現(xiàn)本地緩存的示例代碼,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01