`
sarin
  • 浏览: 1757033 次
  • 性别: Icon_minigender_1
  • 来自: 大连
博客专栏
E3b14d1f-4cc5-37dd-b820-b6af951740bc
Spring数据库访问系列...
浏览量:173670
C2083dc5-6474-39e2-993e-263652d27795
Android学习笔记
浏览量:368147
5f40a095-b33c-3e8e-8891-606fcf3b8d27
iBatis开发详解
浏览量:189272
B272a31d-e7bd-3eff-8cc4-c0624ee75fee
Objective-C学习...
浏览量:99848
社区版块
存档分类
最新评论

Struts2在FreeMarker中国际化的配置

阅读更多
    在Struts2中使用FreeMarker作为表现层已经基本作为普遍配置了。但是熟悉JSP的开发者习惯了JSP标签的使用,而FreeMarker中确实宏的使用,二者虽然有些差别,但是使用上能够很快过渡。
    国际化是Java EE项目中一个不可缺少的部分,当然不是每个项目所必需的,但关键时刻却是不能避免的。当然也有项目做两个路径来进行,把语言区分开来,这也是可以的,当然这需要大量的劳动力和时间,而Java EE的国际化配置却是省时省力的。资源文件的集中管理不仅安全性更高,而且也有高效,页面文件少的特性。
    使用了FreeMarker以后当然不能像在JSP中使用JSTL那样直接,但是也不麻烦。经过以下步骤的配置即可使用。方法固定,实现了Write Once,Copy Anywhere!
    1.配置Struts2,使其支持国际化。方法有两种,一种是直接在struts.xml中配置,还有一种是编写properties文件,如下:
struts.xml
<struts>
<constant name="struts.custom.i18n.resources" value="globalMessages"/>
……
</struts>

struts.properties
struts.custom.i18n.resources=globalMessages

    这样就指定了国际化properties文件的前缀,中文的国际化文件就可以写成globalMessages_zh.properties而日语的国际化文件就是globalMessages_ja.properties.
    2.编写国际化文件,国际化文件的编码方式是Unicode码,这个就不用过多解释了,就是说出了拉丁文的所有文字必须经过转码后才能使用,转码方式是利用jdk提供的native2ascii.exe这个工具完成的。我想这应该没有不会的吧。如果忘了就google一下吧。
    3.在FreeMarker中配置struts的标签库,利用标签库来读取资源文件,这个也十分容易,如下写就行了:
<#assign s=JspTaglibs["/WEB-INF/struts-tags.tld"]>
说明一点就是这样就需要把struts2的标签库tld文件单独抽取出来放置,在FreeMarker中写一个宏来标识即可。
    4.在页面中使用标签来进行国际化。如下即可:
<@s.property value="%{getText('page.homepage.title')}"/>

    其中page.homepage.title需要在资源文件中写好,这样FreeMarker就能直接读取到了。
    测试时,调整浏览器的语言选项就能看到国际化的效果了。
    希望对使用者有用,也欢迎交流看法。
分享到:
评论

相关推荐

    Struts2 与Freemarker 的配置方法

    同时,为在Freemarker中使用Struts2标签,需要添加特定的servlet配置。 5. **配置Struts2**: - 创建struts.xml配置文件,定义Action和结果。例如,创建一个名为"userLogin"的Action,指定其执行的类和方法,然后...

    struts2和freemarker整合

    2. **配置Struts2**:在`struts.xml`配置文件中指定FreeMarker作为视图解析器。 3. **模板目录**:设置项目中的FreeMarker模板文件存放位置。 4. **Action返回值**:Action类的execute方法返回一个结果字符串,对应...

    Struts2与Freemarker的配置方法

    4. **Freemarker的集成**:为了使用Freemarker作为视图渲染引擎,需在Struts2的配置文件中声明Freemarker插件,并配置其路径。例如: ```xml &lt;constant name="struts.freemarker.config" value="/WEB-INF/...

    Struts2整合Freemarker生成静态页面

    2. **配置Struts2**:在Struts2的配置文件(通常为struts.xml)中,我们需要配置Freemarker作为视图解析器。通过添加`&lt;constant name="struts.action.extension" value="html"/&gt;`,让Struts2将Action的结果映射到....

    struts2+freemarker 国际化

    在Struts2和Freemarker中实现国际化,可以让应用的用户界面适应全球范围内的用户。 首先,我们需要理解Struts2的国际化流程。Struts2提供了一种机制,通过资源属性文件(通常是.properties格式)来管理不同语言的...

    Struts2+FreeMarker部署

    2. **配置Struts2**:在`struts.xml`配置文件中,指定使用FreeMarker作为视图解析器。例如: ```xml &lt;constant name="struts.views.freemarker.templateLoaderPath" value="/WEB-INF/classes/"/&gt; ...

    struts2-freemarker

    Struts2和FreeMarker是两种在Java Web开发中广泛应用的技术。Struts2是一个强大的MVC(Model-View-Controller)框架,它极大地简化了构建基于Java的Web应用程序的过程。而FreeMarker则是一种模板引擎,主要用于生成...

    freemarker与struts2详细配置

    在开始配置之前,确保已安装了Struts2框架和FreeMarker库。通常,Struts2的依赖已经包含了FreeMarker,但为了确保版本兼容,可以在项目中明确指定FreeMarker的版本。 ### 2. 配置Struts2核心文件 首先,需要在`...

    struts2+freemarker

    在实际开发中,"freemarker2"这个文件可能是Freemarker的一个示例模板或者配置文件,它可能包含了如何使用Freemarker语法来构建动态网页的具体示例。通过对这个文件的深入学习和实践,开发者可以更熟练地掌握Struts2...

    struts2与Freemarker的配置文件

    在项目开发中,Struts2和Freemarker是两种常见的技术,它们可以在Web层面上进行整合使用。Freemarker是一个模板引擎,它提供了一套自己的模板指令,帮助开发者在表现层上快速开发。而Struts2是一个框架,它提供了对...

    Struts2集成FreeMarker和Velocity,写成了工具类,快速实现页面静态化

    Struts2集成FreeMarker和Velocity,写成了工具类,快速实现页面静态化,以后直接调用即可,无需修改任何源代码,改压缩文件包括 1、工具类; 2、源码(含jar包); 3、mysql数据库可执行文件; 4、struts2集成...

    在struts2中使用freemarker模版

    在`struts.xml`配置文件中,定义一个action,比如`test`,并指定其结果类型为`freemarker`,这样当用户触发这个action时,Struts2会将控制权交给FreeMarker模板来渲染视图。例如: ```xml &lt;result type="...

    struts2+hibernate+freemarker项目实例

    Struts2、Hibernate和FreeMarker是Java开发领域中常见的三个开源框架,它们分别在MVC(Model-View-Controller)架构的不同层面发挥着关键作用。这个"struts2+hibernate+freemarker"项目实例是将这三个框架集成到一起...

    Struts2与Freemarker生成xml文本详细步骤

    在Struts2中结合使用Freemarker,可以方便地生成XML文本,这对于数据交换或XML配置文件的生成非常有用。以下将详细介绍如何在Struts2中利用Freemarker生成XML文本的步骤。 1. **环境配置** 首先,确保你已经安装并...

    Struts2 和freemarker实例

    6. **国际化与本地化**:在Struts2中实现多语言支持,通过资源文件提供不同语言的文本。 7. **错误和异常处理**:配置Struts2的全局异常处理,当出现错误或异常时,如何跳转到特定页面展示错误信息。 8. **拦截器...

    Struts2与FreeMarker模板

    在Struts2中使用FreeMarker之前,首先需要进行相应的配置。通常的做法是在项目的`struts.properties`文件中添加如下配置: ```properties struts.ui.theme=none struts.views.freemarker.enabled=true ``` 其中`...

    Struts2零配置+FreeMarker用户管理系统(UMS)

    这个名为"Struts2零配置+FreeMarker用户管理系统(UMS)"的项目,旨在通过注解的方式展示如何在不编写XML配置文件的情况下,利用Struts2和FreeMarker创建一个用户管理系统。 首先,我们来了解一下Struts2框架。Struts...

    struts2 freemarker

    通过深入研究这些文件,开发者可以了解到如何在Struts2中配置和使用Freemarker,如何编写Action处理业务逻辑,以及如何设计和控制Freemarker模板来创建动态Web页面。对于希望提升Java Web开发技能的人来说,这是一个...

    struts2中使用freeMarker

    - 在Struts2的配置文件(通常为struts.xml)中,你需要指定FreeMarker作为默认的视图技术。 - 配置FreeMarker的路径,确保Struts2能够找到模板文件。例如: ```xml &lt;constant name="struts.freemarker.templates...

    spring+hibernate+struts2+freemarker SSH2 新闻发布系统

    总结起来,"spring+hibernate+struts2+freemarker SSH2 新闻发布系统"是一个基础的Java Web项目,展示了SSH2框架组合在实际开发中的应用。开发者可以通过学习这个小例子,理解如何整合这些技术来构建更复杂的Web应用...

Global site tag (gtag.js) - Google Analytics