JET学习笔记(二)

(1) 将参数传递到模板
    

<%@ jet package="hello" class="GreetingTemplate" %>
          Hello, <%=argument%>!
   

JET Builder 会将这个模板转换成hello包GreetingTemplate类。然后我们创建一个模板类的示例,把一个String对象传到generate方法里:
        GreetingTemplate sayHello = new GreetingTemplate();
        String result = sayHello.generate("Tutorial Reader");
        System.out.println(result);

    上面的代码会在控制台上打印出“Hello, Tutorial Reader!”
    <其中<%=argument%>表示输出参数内容>
(2)引入包
    传入模板的参数可以是任何对象。如果参数不在java.lang包里,或者你的模板使用了不在这个包里的类,你需要在模板jet中直接引入这些类。
    例如:<%@ jet package="hello" imports="java.util.*" class="ImportDemoTemplate" %>
    在下面的例子中我们会创建一个模板生成xml代码。注意我们传递一个包含生成xml所需数据的java.util.List对象到模板
               <%@ jet package="hello" imports="java.util.*" class="XMLDemoTemplate" %>

               <% List elementList = (List) argument; %>
               <?xml version="1.0" encoding="UTF-8"?>
               <demo>
                       <% for (Iterator i = elementList.iterator(); i.hasNext(); ) { %>

                      <element><%=i.next().toString()%></element>
                      <% } %>
               </demo>
   下面的代码说明了怎样调用模板实例。我们创建一个list并且将它传入模板实现类的generate方法。
            List data = new ArrayList();
           data.add("first");
          data.add("second");
          data.add("third");
 
          XMLDemoTemplate generateXml = new XMLDemoTemplate();
         String result = generateXml.generate(data);
         System.out.println(result);
(3) 修改标签
   JET一个很好的特点是你可以修改标记模板文件中脚本程序的标签。当你要生成的代码的语法与JET默认语法及其相似时这个特点十分有用。比如用JET生成JSP页面。
   下一个示例将使用JET生成一个简单的JSP页面。我们将把JET标签修改为用"<$"标记脚本程序的开始,"$>"标记其结束。模板仍然包含"<%"和"%>"但是不再将其视为特殊的,它们可以像其他字符一样写在结果中。
     <%@ jet package="tags.demo" class="JspTemplate" startTag="<$" endTag="$>" %>

     <$ String paramName = (String) argument; /* This is an executed scriptlet */ $>
    <$ if (paramName != null) { $>
     <%= request.getParameter("<$=paramName$>") %> <!-- this is generated JSP -->

     <$ } $>
我们仍然使用String参数调用生成的类,如下:
           System.out.println(new tags.demo.JspTemplate().generate("button"));
  以下输出会显示在控制台。注意输出包含了JSP的标签"<%"和"%>"
          <%= request.getParameter("button") %> <!-- this is generated JSP -->

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值