`

我们需要什么样的模板语言?

阅读更多
JSF给了我一点震撼。这真是一个清晰的“模板语言”。

JSF其实是一个“模板语言”,的确是一个适合html编写的“模板语言”。

我对jsp,从来没有好感的。jsp的taglib的编写,很繁琐。jsp依赖于容器,给编写框架带来了不必要的开销。

第一次看到 velocity,感觉jsp已经多余了,web就应该用velocity这种模板语言来写。

velocity还没有用,又看见了freemarker,freemarker封装后的macro,用起来也和tag很像,看着很舒服,而且freemarker的macro真的很好写。

后来我喜欢上了commontemplate。因为freemarker除了macro设计的比较好之外,其他的设计不是太好,不是太强。

落伍了,最近才见到了JSF的页面代码。我又被震撼了一把。没错,我们一直在希望有一天可以这样写web,没错,我们希望看到这样的代码。

虽然,我不会去尝试使用JSF。希望一统江山的SUN一定又是把JSF做的易学易用但不易扩展。(希望我没冤枉他)。如果不能轻松的编写自己的taglib,这样的模板于我而言是没有意义的。

我到底想要什么?我想要的是一个可以轻松定义taglib的模板语言,没错,是tag,不是macro。

比如:
def dateFormat = { attrs, body ->
	out << new java.text.SimpleDateFormat(attrs.format).format(attrs.date)
}


<g:dateFormat format="dd-MM-yyyy" date="${new Date()}" />


我不得不承认,这很棒。It is GSP of Grails. 但我暂时不了解GSP的taglib的多级嵌套是否有JSF那么强悍。

我的观点是:我们需要的是一个强大的模板语言,可以轻松的定义taglib,并且tag可以在多级嵌套下很好的工作。
what we need is just a strong Template Language. We can define Taglib easily and tags can work on multi-levels。

另外:xslt不能满足要求,xslt只能算一个xml格式化语言。
1
3
分享到:
评论
5 楼 Unmi 2008-08-31  
out <<  还用了符号重载,这些都是 java 所没有的。
4 楼 Unmi 2008-08-31  
grails 有 groovy 的闭包功能啊
3 楼 jasongreen 2008-08-30  
rockjava 写道

说了这么多是在要强调一下grails啊,呵呵,grails确实不错。

我本身是想用纯java开发一套强大的web框架,但是看到grails如此强大的taglib定制功能,我的心情其实蛮无奈的。

2 楼 key232323 2008-08-30  
支持,从jsp到velocity到freemarker一路走来。
1 楼 rockjava 2008-08-30  
说了这么多是在要强调一下grails啊,呵呵,grails确实不错。

相关推荐

    基于java的模板语言 Beetl.zip

    Java模板语言Beetl是一个强大的、高效的、易用的模板引擎,主要应用于Web开发中,用于将业务逻辑和视图层进行分离。它的设计目标是提供一个简洁、灵活且功能丰富的模板语法,使得开发者可以更加专注于页面的布局和...

    中考《道德与法治》万能答题模板.pdf

    下面是我们对《道德与法治》万能答题模板的详细分析: 模板 1 1. 初中道德与法治每课的结构是什么?为什么?怎么办? * 这是做每个习题的最基本思路,学生需要了解每课的结构、原因和对策。 2. 是什么含义?...

    Python-TemplateMail是一个简单的Python库用于使用模板语言Jinja2来发送邮件

    Jinja2是一种广泛使用的、Pythonic的模板语言,能够帮助开发者将动态数据与静态HTML或其他格式的文本结合,生成结构化的邮件内容。TemplateMail库的出现,让邮件的个性化定制和批量发送变得更加高效。 该库的核心...

    Linux脚本语言PERL的模板应用分析

    Linux系统中的Perl是一种强大的脚本语言,常用于处理文本、数据和系统管理任务。在Linux环境中,Perl模板技术被广泛应用于自动化和定制化输出,比如报告生成、配置文件管理和Web开发。本文主要探讨的是如何在Linux...

    【修正版4.15号】微信朋友圈怎么转发测测什么样的异性能给你幸福_HTML手机电脑网站_网页源码移动端前端_H5模板_.zip

    标题提及的是一个修正版的HTML网页源码,适用于手机和电脑,属于H5模板,设计用于转发微信朋友圈的互动测试,以探索“什么样的异性能给你幸福”。描述与标题一致,进一步确认这是一个关于HTML、CSS和JS的项目。标签...

    最新阿里美团Java面经

    Java是一种广泛使用的编程语言,阿里、美团、百度、字节跳动等大厂对Java开发者的需求非常高。以下是Java面试题总结,涵盖了Java基础、多线程、设计模式、JVM、数据结构与算法、数据库、Spring、Netty、缓存、技术...

    链环科技知识点介绍,微信小程序是基于什么语言开发的?.docx

    微信小程序的开发语言主要是由腾讯官方专门为小程序设计的一套框架,这套框架包括WXML(WeiXin Mark Language)、WXSS(WeiXin Style Sheet)以及JS(JavaScript)。 1. WXML(WeiXin Mark Language): WXML是...

    IOS式样清新简历模板

    从给定的信息来看,我们可以抽取出以下几个主要的知识点:简历结构、专业技能、教育背景以及奖项等内容。 ### 简历结构 #### 基本信息 - **姓名**:John Doe - **职位**:艺术总监(Art Director) - **年龄**:26...

    《架演》-清华社出版要求和模板样章示例

    《架演》是清华大学出版社推出的一本面向IT行业的专业书籍,其出版要求和模板样章示例对于有意出版此类书籍的作者来说具有重要的参考价值。本文将深入解析这些内容,帮助作者更好地理解如何按照出版社的标准创作高...

    考研英语作文万能模板

    首先,我们要理解什么是“万能模板”。万能模板并非指完全相同的一段文字,而是一种可以适用于多种题型和主题的写作框架。它通常包括开头段落、主体段落和结尾段落的通用表述方式,帮助考生迅速进入写作状态,避免在...

    博客,简历,等网站模板

    标题中的“博客,简历,等网站模板”表明这是一个包含多种用途的网站模板集合,包括博客模板、简历模板以及可能的其他通用网站模板。这些模板可能是为了方便非专业开发者快速搭建自己的在线存在,如个人博客、在线...

    网狐v6602游戏源码网站模板1

    【标题】"网狐v6602游戏源码网站模板1" 提供的是一个用于构建游戏网站的源代码模板,特别强调了是基于“网狐”技术平台的版本6602。这类源码通常包含了网站前端和后端的所有必要组件,允许开发者快速搭建并定制一个...

    后天模板27例

    "后天模板27例"是一个专为后台建站设计的资源集合,旨在提供快速、高效的网站构建解决方案。这个模板库包含了27种不同的设计样式,涵盖了后台管理系统的各种应用场景,如数据分析、用户管理、设置选项等。这些模板...

    linux课程设计模板

    根据提供的文件信息,我们可以将这份“Linux课程设计模板”中的主要知识点进行详细的解析与扩展。 ### 1. 设计的题目及要求 在这一部分,学生需要明确自己的课程设计题目以及具体的实现要求。通常,这样的设计题目...

    机械工程师简历模板式样.doc

    【自我评价】中,申请人强调自己思维敏捷、语言表达能力强,能够建立良好的客户关系,这在机械工程师的职业中是非常重要的,因为该职位不仅需要技术能力,还需要良好的人际交往能力和团队合作精神。 综合来看,这个...

    网页模板_网页制作 网页

    这个模板可能已经预设了适合多种用途的页面布局,比如首页、关于我们、产品展示、联系我们等。模板的设计风格可能是现代简洁的,也可能是复杂多样的,具体取决于其设计理念和目标用户群。 使用网页模板的优势在于,...

    30个div+css后台模板

    开发者可以使用特定的模板语言编写页面结构,然后在运行时用实际数据填充。例如,FreeMarker、Thymeleaf和Velocity是常见的Java模板引擎。这些后台模板可能包含了各种模板引擎的示例,有助于开发者了解如何结合后端...

    2022年 国外优秀H5模板

    这些文件将构成模板的完整结构,开发者可以根据需要进行自定义和编辑。 综合以上信息,我们可以理解这是一个结合了HTML5、jQuery和Bootstrap技术的现代网站模板,其紫色主题和多样的首页布局方案为创建吸引人的、...

    网上书店前台模板

    网上书店前台模板是一种专为在线图书销售平台设计的网页界面模板,它包含了各种页面元素和功能,以便为用户提供直观、易用且具有吸引力的购书体验。这种模板通常包括首页、分类页、商品详情页、购物车、用户中心等多...

    简历模板 简历模板简历模板 简历模板

    在标签“各种简历模板”中,我们可以理解为这些模板涵盖了多种类型,包括但不限于:技术型、管理型、设计型、教育型等,适用于不同的行业和职位。这使得无论你是IT工程师、设计师、教师还是市场营销专业人士,都能...

Global site tag (gtag.js) - Google Analytics