日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

自定义LocaleResolver实现页面中英文切换

發(fā)布時(shí)間:2025/3/20 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 自定义LocaleResolver实现页面中英文切换 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文章目錄

  • 1.配置i18n(國(guó)際化)文件
  • 2.頁(yè)面設(shè)置值
  • 3.編寫(xiě)自定義的LocaleResolver組件
  • 4.注意點(diǎn)

1.配置i18n(國(guó)際化)文件


建立login和login_en_US時(shí)會(huì)自動(dòng)生成Bundle

配置默認(rèn)值,英文,中文

2.頁(yè)面設(shè)置值

這里用了thymeleaf模板,前面的文章有提到用法

<img class="mb-4" th:src="@{/img/bootstrap-solid.svg}" alt="" width="72" height="72"><h1 class="h3 mb-3 font-weight-normal" th:text="#{login.tip}" >Please sign in</h1><input type="text" class="form-control" th:placeholder="#{login.username}" required="" autofocus=""><input type="password" class="form-control" th:placeholder="#{login.password}" required="" ><div class="checkbox mb-3"><label><input type="checkbox" value="remember-me" >[[#{login.remenber}]]

測(cè)試一下值是否顯示

兩個(gè)超鏈接標(biāo)簽點(diǎn)擊傳值

<a class="btn btn-sm" th:href="@{/index.html(l='zh_CN')}">中文</a><a class="btn btn-sm" th:href="@{/index.html(l='en_US')}">English</a>

3.編寫(xiě)自定義的LocaleResolver組件

public class MyLocalResolver implements LocaleResolver {@Overridepublic Locale resolveLocale(HttpServletRequest httpServletRequest) {//獲取請(qǐng)求中的語(yǔ)言參數(shù)String language = httpServletRequest.getParameter("l");//如果沒(méi)有返回值就用默認(rèn)的Locale locale = Locale.getDefault();if (!StringUtils.isEmpty(language)){//zh_CN or en_USString[] split = language.split("_");//國(guó)家,地區(qū)locale = new Locale(split[0],split[1]);}return locale;}@Overridepublic void setLocale(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Locale locale) {} }

將組件配置到spring容器

@Configuration public class MyMvcConfig implements WebMvcConfigurer {@Beanpublic LocaleResolver localeResolver(){return new MyLocalResolver();} }

測(cè)試

4.注意點(diǎn)

一定要把所有的編碼都改為utf-8格式,否則可能會(huì)出現(xiàn)亂碼

總結(jié)

以上是生活随笔為你收集整理的自定义LocaleResolver实现页面中英文切换的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。