最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring MVC Locale 本地化示例詳解

 更新時(shí)間:2023年09月14日 09:10:26   作者:福  
這篇文章主要為大家介紹了Spring MVC Locale本地化示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

通過RequestContext.getLocale()獲取到對(duì)應(yīng)的Locale

Spring各模塊都支持國(guó)際化,SpringMVC也同樣支持。DispatcherServlet通過Locale Resovler自動(dòng)根據(jù)客戶端的Locale支持國(guó)際化。

request請(qǐng)求上來后,DispatcherServlet查找并設(shè)置Locale Resovler,我們可以通過RequestContext.getLocale()獲取到對(duì)應(yīng)的Locale。

此外,可以利用攔截器在特定情況下修改locale,比如,根據(jù)請(qǐng)求參數(shù)修改locale。這項(xiàng)功能對(duì)于通過頁面選項(xiàng)指定locale的應(yīng)用非常有用(比如在頁面上選擇中文/英文的方式指定應(yīng)用的語言)。

Locale Resolver和攔截器定義在org.springframework.web.servlet.i18n包,可以通過配置文件指定,Spring支持如下locale resolver:

  • Time Zone
  • Header Resolver
  • Cookie Resovlver
  • Session Resolver
  • Locale Interceptor

Time Zone

除獲取用戶locale之外,有時(shí)候也需要獲取到用戶的時(shí)區(qū),LocaleContextResolver接口通過擴(kuò)展LocaleResovler可提供對(duì)時(shí)區(qū)的支持。

可通過RequestContext.getTimeZone() 獲取用戶時(shí)區(qū)。

Header Resolver

Header Resolver通過解析請(qǐng)求頭的accept-language,從而獲取到客戶端瀏覽器發(fā)送上來的相關(guān)頭信息。

SpringMVC提供的Header Resolver:AcceptHeaderLocaleResolver。

瀏覽器默默認(rèn)會(huì)發(fā)送相關(guān)的請(qǐng)求頭信息:

SpringMVC通過DispatcherServlet.properties指定的默認(rèn)LocaleResolver正是Header Resolver:

org.springframework.web.servlet.LocaleResolver=org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver

Cookie Resolver

檢查客戶端發(fā)送上來的請(qǐng)求的cookie中是否包含Locale或TimeZone信息,如包含則應(yīng)用該信息創(chuàng)建Locale。

SpringMVC提供的Cookie Resolver:org.springframework.web.servlet.i18n.CookieLocaleResolver。

通過如下方式配置:

<bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver">
    <property name="cookieName" value="clientlanguage"/>
    <!-- in seconds. If set to -1, the cookie is not persisted (deleted when browser shuts down) -->
    <property name="cookieMaxAge" value="100000"/>
</bean>

Session Resolver

SessionLocaleResolver通過session獲取客戶端的Locale和TimeZone信息,信息存儲(chǔ)在HttpSession中,隨著session的失效而失效。

Locale Interceptor

使用攔截器、通過頁面參數(shù)設(shè)置Locale。SpringMVC提供了一個(gè)LocaleChangeInterceptor攔截器,可以直接使用。

比如:

<bean id="localeChangeInterceptor"
        class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
    <property name="paramName" value="siteLanguage"/>
</bean>
<bean id="localeResolver"
        class="org.springframework.web.servlet.i18n.CookieLocaleResolver"/>
<bean id="urlMapping"
        class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="interceptors">
        <list>
            <ref bean="localeChangeInterceptor"/>
        </list>
    </property>
    <property name="mappings">
        <value>/**/*.view=someController</value>
    </property>
</bean>

配置localeChangeInterceptor,指定其參數(shù)名稱為siteLanguage,將該攔截器配置到SimpleUrlHandlerMapping上,對(duì)*.view請(qǐng)求,根據(jù)請(qǐng)求參數(shù)siteLanguage決定其locale。

以上就是Spring MVC Locale 本地化示例詳解的詳細(xì)內(nèi)容,更多關(guān)于Spring MVC Locale 本地化的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • SpringBoot使用Maven插件進(jìn)行項(xiàng)目打包的方法

    SpringBoot使用Maven插件進(jìn)行項(xiàng)目打包的方法

    這篇文章主要介紹了SpringBoot使用Maven插件進(jìn)行項(xiàng)目打包的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Java關(guān)鍵字volatile和synchronized作用和區(qū)別

    Java關(guān)鍵字volatile和synchronized作用和區(qū)別

    這篇文章主要為大家詳細(xì)介紹了Java關(guān)鍵字volatile和synchronized的作用和區(qū)別,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • Java中常用的圖片壓縮技術(shù)詳解

    Java中常用的圖片壓縮技術(shù)詳解

    在Java編程語言中,處理圖片壓縮是一項(xiàng)常見的任務(wù),特別是在存儲(chǔ)、傳輸或展示大量圖像資源時(shí),Java作為企業(yè)級(jí)開發(fā)的主力語言,提供了多種圖片壓縮解決方案,本文將系統(tǒng)介紹Java中常用的圖片壓縮技術(shù),需要的朋友可以參考下
    2025-06-06
  • 淺談Java數(shù)值類型的轉(zhuǎn)換與強(qiáng)制轉(zhuǎn)換

    淺談Java數(shù)值類型的轉(zhuǎn)換與強(qiáng)制轉(zhuǎn)換

    這篇文章主要介紹了Java數(shù)值類型的轉(zhuǎn)換與強(qiáng)制轉(zhuǎn)換,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • 完美解決idea moudle沒有藍(lán)色的小方塊的問題

    完美解決idea moudle沒有藍(lán)色的小方塊的問題

    這篇文章主要介紹了完美解決idea moudle沒有藍(lán)色的小方塊的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Java泛型機(jī)制與反射原理相關(guān)知識(shí)總結(jié)

    Java泛型機(jī)制與反射原理相關(guān)知識(shí)總結(jié)

    今天帶大家學(xué)習(xí)的是關(guān)于Java進(jìn)階的相關(guān)知識(shí),文章圍繞著Java泛型機(jī)制與反射原理展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Java中通過繼承Thread類創(chuàng)建線程的步驟

    Java中通過繼承Thread類創(chuàng)建線程的步驟

    本文介紹了如何通過繼承Thread類創(chuàng)建線程,包括Thread類的定義、創(chuàng)建線程的步驟、優(yōu)缺點(diǎn)、使用場(chǎng)景和注意事項(xiàng),通過示例代碼展示了多線程下載文件的實(shí)現(xiàn),感興趣的朋友跟隨小編一起看看吧
    2025-02-02
  • SpringMVC自定義參數(shù)綁定實(shí)現(xiàn)詳解

    SpringMVC自定義參數(shù)綁定實(shí)現(xiàn)詳解

    這篇文章主要介紹了SpringMVC自定義參數(shù)綁定實(shí)現(xiàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • springboot配置log日志按天按類緩存實(shí)現(xiàn)過程

    springboot配置log日志按天按類緩存實(shí)現(xiàn)過程

    文章介紹了如何配置Spring Boot項(xiàng)目中的`application.yml`文件,并在同級(jí)目錄下創(chuàng)建`logback-spring.xml`文件以自定義日志設(shè)置,最后,展示了運(yùn)行結(jié)果的圖示
    2026-01-01
  • java異常處理執(zhí)行順序詳解try catch finally

    java異常處理執(zhí)行順序詳解try catch finally

    try catch語句是java語言用于捕獲異常并進(jìn)行處理的標(biāo)準(zhǔn)方式,對(duì)于try catch及try catch finally執(zhí)行順序必須有深入的了解
    2021-10-10

最新評(píng)論

本溪| 敦化市| 青海省| 岚皋县| 阳曲县| 望都县| 贺州市| 东宁县| 恭城| 大姚县| 金塔县| 甘孜县| 寿宁县| 涪陵区| 行唐县| 甘孜县| 长顺县| 昌黎县| 微山县| 南平市| 弋阳县| 尼勒克县| 资源县| 杂多县| 林甸县| 泰安市| 石门县| 莒南县| 肇州县| 太仆寺旗| 福安市| 阿克苏市| 井冈山市| 丘北县| 清徐县| 怀来县| 深州市| 丹寨县| 西丰县| 剑河县| 花垣县|