一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Spring boot+beetl+i18n國際化處理的方法

Spring boot+beetl+i18n國際化處理的方法

2021-07-31 12:19Start_liyi Java教程

這篇文章主要介紹了Spring boot+beetl+i18n國際化處理的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

國際化(internationalization)是設計和制造容易適應不同區域要求的產品的一種方式。它要求從產品中抽離所有地域語言,國家/地區和文化相關的元素。換言之,應用程序的功能和代碼設計考慮在不同地區運行的需要,其代碼簡化了不同本地版本的生產。開發這樣的程序的過程,就稱為國際化。

spring boot 搭配慢慢開始火起來的 beetl 模板 配置國際化

首先需要添加webmvcconfigurer配置

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/**
 * 設置攔截器
 */
@override
public void addinterceptors(interceptorregistry registry) {
 registry.addinterceptor(localechangeinterceptor());
}
 
/**
 * 國際化切換攔截器
 *
 * @return 國際化切換攔截器
 */
@bean
public localechangeinterceptor localechangeinterceptor() {
 localechangeinterceptor interceptor = new localechangeinterceptor();
 interceptor.setparamname("lang");
 return interceptor;
}
 
/**
 * 國際化處理器
 *
 * @return 國際化處理器
 */
@bean
public localeresolver localeresolver() {
 sessionlocaleresolver slr = new sessionlocaleresolver();
 //設置默認區域,
 slr.setdefaultlocale(locale.china);
 return slr;
}

然后自定義配置beetl

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
...
 @autowired
 private webapplicationcontext wac;
 
 @bean
 public beetltemplatecustomize beetltemplatecustomize() {
  return new beetltemplatecustomize() {
   public void customize(grouptemplate grouptemplate) {
    // 注冊全局共享變量
    map<string, object> sharedvars = new hashmap<string, object>();
    grouptemplate.setsharedvars(sharedvars);
 
    // 注冊國家化函數
    grouptemplate.registerfunction("i18n", new i18nfunction(wac));
   }
  };
 }

然后配置i18n國際化函數

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class i18nfunction implements function {
 
 private webapplicationcontext wac;
 
 public i18nfunction(webapplicationcontext wac) {
  this.wac = wac;
 }
 
 @override
 public object call(object[] obj, context context) {
  httpservletrequest request = (httpservletrequest) context.getglobal(webvariable.request);
  requestcontext requestcontext = new requestcontext(request);
  string message = requestcontext.getmessage((string) obj[0]);
  return message;
 }
 
}

最后配置資源文件

Spring boot+beetl+i18n國際化處理的方法

這個資源文件路徑也是配出來的,不多介紹了......

測試:

在模板中添加${i18n('messagecode')} , 在url參數中添加lang=en 或者 lang=zh-cn

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://segmentfault.com/a/1190000018841007

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: nxgx欧美| 久久99视热频国只有精品 | av在线色| 2019自拍偷拍视频 | 国产普通话对白露脸流出 | 国产高清在线播放刘婷91 | 97se亚洲国产综合自在线观看 | 国产va免费精品高清在线 | 大杳蕉在线影院在线播放 | 天堂69亚洲精品中文字幕 | 无限观看社区在线视频 | 欧美成人福利视频 | 韩国三级理韩国三级理人伦 | 日韩精品成人在线 | 久久99精国产一区二区三区四区 | 免费 视频| 69日本人 | 欧美三级一区二区 | 成人123| 国产一级特黄aa大片在线 | 欧美精品久久久久久久影视 | 国产特黄一级一片免费 | 欧美影院一区二区 | 精品一区二区三区在线播放 | 日韩成本大片35分钟免费播放 | 毛片免费观看的视频 | bt岛www| 国产一区二区在线免费观看 | 欧美性色老妇人 | 亚洲高清免费在线观看 | 男女羞羞的视频 | 亚洲社区在线观看 | 九九热视频免费 | 日本人妖网站 | 色偷偷91久久综合噜噜噜 | 日韩欧美一区二区在线观看 | 69短视频| 日本在线观看免费高清 | 双性少爷受糙汉攻h | 日韩一区二区不卡 | 欧美久在线观看在线观看 |