SpringBoot實現國際化過程詳解
阿新 • • 發佈:2020-01-07
這篇文章主要介紹了SpringBoot實現國際化過程詳解,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
實現方法:thymeleaf模板引擎加上BootStrap
準備工作:
1.將準備好的Bootstrap模板放在templates下讓SpringBoot進行自動配置
SpringBoot自動配置會自動到(idea的shif鍵連按兩下進入全域性搜尋)
2.Bootstrp的引入(這裡是maven以depency的方式引入)
<!--引入bootstrap--> <dependency> <groupId>org.webjars</groupId> <artifactId>bootstrap</artifactId> <version>4.0.0</version> </dependency>
3.thymeleaf的引入
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
4.編寫國際化配置檔案
使用ResourceBundleMessageSource管理國際化資原始檔
springBoot預設配置
自己配置的國際化的程式碼:
package com.zyb.webdemo.component; import org.springframework.web.servlet.LocaleResolver; import org.thymeleaf.util.StringUtils; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.Locale; /** * 在連結上攜帶區域資訊 */ public class MyLocaleResolver implements LocaleResolver { @Override public Locale resolveLocale(HttpServletRequest request) { String l = request.getParameter("l"); Locale locale = Locale.getDefault(); if(!StringUtils.isEmpty(l)){ String[] split = l.split("_"); locale = new Locale(split[0],split[1]); } return locale; } @Override public void setLocale(HttpServletRequest request,HttpServletResponse response,Locale locale) { } }
上面附帶連結
結果亂碼的解決方案;
效果圖:
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。