微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用Groovy Template 生成代码 2nd

update at 2005.7.28 upgrade 更新 Java直接调用的方式 and JSR-2

前篇:轻量级的代码生成方案选择

0.Groovy Template概述

    Groovy Template其实就是JSP的Groovy简化版,而且有XPath这样的内置xml简化语法,并且不依赖于JSP容器,可由Java或Groovy直接调用

   TemplateEngine的实现代码只有219行,在src/groovy/test/SimpleTemplateEngine.java

    因为JSR-2的多行String 改用""" """而不是" " 来括住,所以 SimpleTemplateEngine暂时不可以用,可用GStringTemplateEngine暂代。

1.Groovy Template
Groovy官方网站上的链接: Groovy Templates 

Groovy Template类似JSP,不过有着动态语言的全部优势。
IBM中文站上的《实战Groovy: 使用Groovy 模板进行MVC 编程》

2.Groovy的内置xml语法
Groovy官方网站上的链接GPath

GPath是Groovy内置的XML访问语法,很简单,两种典型的使用方式如下:

characters = book.character
for (c in characters)
{
        println c['@name']
 }

character = book.character.find { it['@id'] == '2' }

3.在ant里调用groovy template
3.1 用Groovy调用template在IBM的文章里讲了。

3.2 用java直接调用template的方式如下

 SimpleTemplateEngine engine = new SimpleTemplateEngine();
 Map binding  = new HashMap();
 binding.put(....);
 String output = engine.createTemplate(templateFile).make(dataModel).toString();

4.不足:
  据同事讲的
  1.模板不能用import语句,必须写类的全路径
  2.对 <% %>没有方便的转义字符
  3.xml语法里,节点只能拿到children(),不能拿到parent()

  都不是很难的事情,相信后继版本会改进。最惨的其实是没有好的编辑器,想想VeLocity,Freemarker遭受的待遇,GSP想很快有个好编辑器也不是这么容易。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐