`
weina
  • 浏览: 144899 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

freemarker 国际化

阅读更多
freemarker支持多语言国际化,只要把模板名称按照java资源文件的写法就可以了,也就是name_语言_国家地区.ftl 如果找不到对应的语言,就会用默
认语言的模板。那么就需要定义很多的ftl文件,如果要是改动模版的话,就比较费功夫,

所以,西面这种是  freemarker直接使用

源文件







进行多语言国际化



 



publicclass FreeMarkerTest 





{
   publicstaticvoid main(String[] args)





{
        FreeMarkerTest test 

=

new

 

FreeMarkerTest();
        test.sayHello(

"

hermit

"

,Locale.CHINA);
        test.sayHello(

"

hermit

"

,Locale.ENGLISH);
    }







 publicvoid sayHello(String name,Locale locale)




{

        Configuration freemarkerCfg 

=

 

new

 

Configuration();
        freemarkerCfg.setClassForTemplateLoading(

this

.getClass(), 

"

/

"

);
        freemarkerCfg.setEncoding(Locale.getDefault(), 

"

UTF-8

"

);
       Template template;
       Locale.setDefault(Locale.ENGLISH);

      


try

 {            template 

=

freemarkerCfg.getTemplate(

"

Hello.ftl

"

);
           template.setEncoding(

"

UTF-8

"

);
            HashMap root 

=

 newHashMap();
            root.put(

"

user

"

, name);
            ResourceBundle RESOURCE_BUNDLE 

=

ResourceBundle.getBundle(

"

ApplicationResources

"

,locale);
            ResourceBundleModel rsbm 

=

new

 ResourceBundleModel(RESOURCE_BUNDLE,

new

 

BeansWrapper());
            root.put(

"

bundle

"

, rsbm);
            StringWriter writer 

=

newStringWriter();
            template.process(root, writer);
            System.out.println(writer.toString());


        }




catch

(Exception e)

 {
            e.printStackTrace();
        }




}




}











分享到:
评论
1 楼 hanmiao 2012-06-13  
楼主这代码的排版真够乱的,完全没法看。

相关推荐

    struts2+freemarker 国际化

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

    springmvc 实现i18n国际化+freemarker小实例demo

    在IT行业中,国际化(i18n)是一种技术,它允许软件产品和服务适应不同地区和语言的需求。Spring MVC作为Java Web开发中的一个强大框架,提供了支持i18n的机制。结合Freemarker模板引擎,我们可以构建出具有多语言功能...

    freemarker 自定义freeMarker标签

    在实际开发中,自定义标签可以实现许多高级功能,如数据库查询、缓存管理、国际化处理等。例如,你可以创建一个自定义标签用于处理分页数据,接受页码和每页数量作为参数,然后在后台查询数据库并返回相应的页面内容...

    Freemarker 设计指南

    5. 智能的国际化和本地化:字符集智能化,数字格式本地化敏感,日期和时间格式本地化敏感,非 US 字符集可以用作标识,多种不同语言的相同模板。 6. 强大的 XML 处理能力:<#recurse> 和指令用于递归遍历 XML 树,...

    freemarker-2.3.23jar

    7. **国际化和本地化**:Freemarker支持多语言环境,可以方便地切换不同的语言版本。 8. **错误处理**:当模板存在错误时,Freemarker会抛出异常,并提供详细的错误信息,帮助开发者快速定位问题。 9. **API和配置...

    FreeMarker

    8. **国际化与本地化**:FreeMarker 支持多语言环境,可以通过`<#t>`和`<#lt>`标签进行文本的国际化和本地化处理。 9. **缓存机制**:为了提高性能,FreeMarker 可以缓存编译后的模板,避免每次请求都重新编译。...

    FreeMarker2.3.23官方中文文档

    5. **国际化(i18n)支持**:FreeMarker支持多语言环境,可以通过`<#t>`标签进行日期和时间的本地化处理,`<#lt>`标签进行文本的本地化。 6. **安全机制**:FreeMarker有防止跨站脚本(XSS)攻击的安全特性,可以...

    freemarker-2.3.28.jar

    6. **国际化支持**: Freemarker支持多语言环境,可以通过不同语言的资源包来实现内容的国际化。 7. **宏与导入**: 它允许用户定义可重用的代码块,称为宏,并通过`<@import>`指令引入其他模板,提高了代码的复用性...

    freemarker把jsp静态化简单应用

    另外,FreeMarker还支持自定义指令、国际化、模板继承等功能,这些都是进一步提升项目效率和扩展性的关键。 通过以上步骤,你就可以在MyEclipse中使用FreeMarker实现JSP页面的静态化。记住,良好的分层设计和模板...

    Freemarker简介及标签详解大全

    7. 智能的国际化和本地化:字符集智能化(内部使用 UNICODE),数字格式本地化敏感,日期和时间格式本地化敏感等。 8. 强大的 XML 处理能力:<#recurse> 和指令(2.3 版本)用于递归遍历 XML 树。 -FreeMarker 的...

    FreeMarker概述2008

    5. **智能的国际化和本地化**:FreeMarker支持多种字符集,智能处理Unicode,本地化的数字格式、日期和时间格式,以及非英文字符集作为标识。 6. **强大的XML处理**:提供了`<#recurse>`和`<#visit>`等指令,方便...

    freemarker-2.3.22

    5. **国际化与本地化**:Freemarker支持i18n,可以方便地处理多语言内容。 6. **错误处理**:当模板语法错误或数据模型问题出现时,Freemarker提供详细的错误报告,帮助开发者定位问题。 7. **API使用**:在Java...

    freemarker 2.3.10架包

    4. **国际化与本地化**:Freemarker支持多语言环境,通过`<#t>`指令和`<#lt>`标签,可以轻松实现国际化和本地化的文本输出。 5. **宏和导入**:宏类似于函数,可以复用代码段。`<#macro>`定义宏,`<#import>`或`...

    freemarker中文API手册

    5. 智能的国际化和本地化:支持字符集智能化、数字格式本地化敏感、日期和时间格式本地化敏感等。 6. 强大的XML处理能力:支持递归遍历XML树,能够在模板中清楚和直觉的访问XML对象模型。 FreeMarker的设计指南是...

    FreeMarker手册.pdf

    9. **国际化(i18n)支持**:通过`<#assign>`指令和`<#t>`标签,FreeMarker可以方便地处理多语言资源,实现应用程序的国际化。 10. **错误处理和调试**:FreeMarker提供了丰富的错误处理机制,如异常捕获和调试日志...

    struts2+freemarker

    7. **国际化与本地化**:Struts2和Freemarker都支持多语言环境,可以通过资源文件实现不同地区的文字显示。 在实际开发中,"freemarker2"这个文件可能是Freemarker的一个示例模板或者配置文件,它可能包含了如何...

    freemarker各种版本的jar包

    - 可能提供了更好的国际化支持,方便多语言环境的应用。 - 新增或改进了对XML、JSON等数据格式的处理能力。 5. **Freemarker 2.3.25**: - 在这个版本中,开发者可能已经对模板引擎进行了大量的测试和调整,以...

    FreeMarker.pdf

    FreeMarker的核心特性包括其通用性、强大的模板语言、通用数据模型、Web优化、智能的国际化和本地化以及强大的XML处理能力。它能够生成各种类型的文本,如HTML、XML、RTF等,并且易于集成到现有的系统中。FreeMarker...

    freemarker 中文乱码解决

    在处理Freemarker模板引擎时,中文乱码问题是一个常见的挑战,尤其是在国际化应用中。Freemarker是一款功能强大的模板引擎,被广泛应用于Web开发中,用于动态生成HTML、XML等文本格式的页面。然而,当涉及到非英文...

    FreeMarker相关学习文档

    4. 国际化支持:通过使用`<#t>`标签,FreeMarker可以轻松实现多语言环境下的文本处理。 三、FreeMarker的常用语法 1. 输出表达式:`${expression}`,用于输出数据模型中的值。 2. 条件语句:`<#if>...<#else>......

Global site tag (gtag.js) - Google Analytics