国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Spring boot + beetl + i18n國際化處理

zebrayoung / 1909人閱讀

摘要:搭配慢慢開始火起來的模板配置國際化首先需要添加配置設置攔截器國際化切換攔截器國際化切換攔截器國際化處理器國際化處理器設置默認區域然后自定義配置注冊全局共享變量注冊國家化函數然后配置國際化函數最后配置資源文件這個資源文件路徑也是配出來的,不多

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

首先需要添加WebMvcConfigurer配置

    /**
     * 設置攔截器
     */
    @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

...
    @Autowired
    private WebApplicationContext wac;

    @Bean
    public BeetlTemplateCustomize beetlTemplateCustomize() {
        return new BeetlTemplateCustomize() {
            public void customize(GroupTemplate groupTemplate) {
                // 注冊全局共享變量
                Map sharedVars = new HashMap();
                groupTemplate.setSharedVars(sharedVars);

                // 注冊國家化函數
                groupTemplate.registerFunction("i18n", new I18nFunction(wac));
            }
        };
    }

然后配置i18n國際化函數

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;
    }

}

最后配置資源文件

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

測試:
在模板中添加${i18n("messageCode")} , 在url參數中添加lang=en 或者 lang=zh-CN

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/77546.html

相關文章

  • 自己動手在Spring-Boot上加強際化功能

    摘要:還設置一個攔截器來攔截國際化語言的變化。修改啟動類攔截器現在我們再運行一下看看效果,看到每個鏈接都顯示的他們對應的國際化信息里的內容。 前言 公司將項目由Struts2轉到Springmvc了,由于公司業務是境外服務,所以對國際化功能需求很高。Struts2自帶的國際化功能相對Springmvc來說更加完善,不過spring很大的特性就是可定定制化性強,所以在公司項目移植的到Sprin...

    gecko23 評論0 收藏0
  • spring boot 之旅 - 集成模板引擎beetl

    摘要:之旅系統環境新建項目使用開發工具直接在官網創建參考博客新建驗證訪問啟動右鍵瀏覽器輸入頁面顯示正常集成視圖引擎參考文檔參考項目文件導入配置測試訪問學習文檔源碼下載百度云盤地址 spring boot 之旅 系統環境 JDK 8 Spring Boot 1.5.3 beetl 2.7.15 新建項目 adagio 使用開發工具 Spring Tool Suite - new Spri...

    aikin 評論0 收藏0
  • 【從零入門系列-0】Spring Boot 之 Hello World

    摘要:結束語非常智能化,為開發者提供大量的默認配置細節,因此在的幫助下可以快速完成項目的運行,極簡入門繼續看從零入門系列程序結構設計說明 環境準備 java 開發環境 JDK1.8 安裝 Maven 安裝,jar自動依賴及包管理工具 IDE編輯器:IntelliJ IDEA 2019 說明 本項目為從零入門示例,目標為構建一個書籍增刪改查管理頁,力爭記錄一個無java基礎的程序員學習筆...

    icyfire 評論0 收藏0
  • Beetl 快速入門

    摘要:簡單快速了解是前端視圖填充數據的工具,是個頁面模板,可以像表達式那樣操作數據,那樣公共代碼引用,很多好用的方法。目錄結構快速接入深入了解待續。。。 簡單快速了解 Beetl 是前端視圖填充數據的工具,是個頁面模板,可以像 el 表達式那樣操作數據,jsp 那樣公共代碼引用,很多好用的方法。官方模板對比:showImg(https://segmentfault.com/img/bVbfa...

    wushuiyong 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<