ftm国际化解决方案

记录一下踩过的坑,在使用ftm:message的时候我发现这个的国际化是依赖于本地浏览器的语言环境的!关于自主设置这个语言的方法有如下3种:(个人建议使用第二种,可以更加灵活且有效!第一种我这边没有生效

本文为归纳整理,原出处来自(非常感谢原作者):https://viralpatel.net/blogs/update-jstl-locale/

一:使用 <fmt:setLocale>

使用setLocale 标签设置默认的local,例如:

在当前jsp页面添加如下设置:

<fmt:setLocale value="en_US"/>

设置全局的local,使其在所有的页面生效,例如:

<fmt:setLocale value="en_US" scope="session"/>

二:如果要在servlet/controller中以编程方式设置JSTL区域设置,请使用javax.servlet.jst.jstl.core.config类进行设置。

具体的使用方式:

Config.set( session, Config.FMT_LOCALE, new Locale("zh","CN") )

请根据自己需要的语言进行修改(此处new的Locale为java.util.Locale

三:使用servlet上下文参数的全局设置

通过传递servlet内容参数在全局级别设置区域设置:

<web-app>

  <context-param>

    <param-name> javax.servlet.jsp.jstl.fmt.locale </param-name>

    <param-value> en_US </param-value>

  </context-param>

  ...

</web-app>

这种方式的不好之处是不够灵活,不便于动态的修改。

 

posted @ 2019-04-29 16:29  行走—舒  阅读(179)  评论(0编辑  收藏  举报