Turbin学习笔记

Turbin学习应该注意的地方:

##注释

1. 注意:
public class NewUserFoo extends VelocityAction

 原来,在我们的这个继承自VelocityAction 的Action开始执行的时候,有一个“event”也同时传递给了它[ii]。Turbine会根据这个“event”自动去执行相应的方法[iii]。如果没有指定“event”或指定的“event”没有对应的处理方法的话,doPerform()方法将会被执行。
  好了,看到这样的机制给我们带来了一个什么样的结果了吗?我们可以把原来需要用一个Action类来完成的事务写到ActionEvent类的一个方法里!这样,我们就不必为每一个“Action”都写一个对应的类,给我们日后的程序维护和文档维护带来了非常大的便利之处。尤其在一个页面中有很多Button的时候,我们就能更轻松的应付,并且阻止了我们陷入“if…else if…”的怪圈。
  然而,为了获得这项神奇的能力,我们不得不以自由为代价……J:
  1、Action Event name必须以“eventSubmit_”作为前缀
  2、完成Action Event的方法必须以“do”打头
  3、“do”之后的第一个字母必须大写,其余的字母必须小写

2.请注意,现在,Velocity的数字比较仅限于Integers – 任何其它的类型都会返回false。唯一的例外是“==”,Velocity要求“==”两边的对象必须是同一种类型。

3.Turbine首先将.vm文件名的第一个字母大写,再去classpath中查找是否有相应的类。
例如,如果模版文件名为Normal.vm或normal.vm的话,Turbine就会去查找是否存在类名为Normal的这个类;
同样,helloWorld.vm对应HelloWorld这个类,role_editor对应Role_editor这个类。
4. 输出用  $!变量 这样就不用判断是否为空了

5. 字符串比较 if($a == "1"){}   注意:数字比较仅限于Integers  如Integer a = new Integer(1)  页面if($a==1)//true
6. #parse("/文件名") 引入文件时, 该文件要在templates的根目录下
  
8. 传参: context.put ("username", username);
9. foreach的使用:     #foreach($departmentVo in $departmentVoList) 内容 #end  
                                     
9.  利用Turbin的分页类:
<script type="text/javascript">
    /**
*翻页脚本
*@param pageIndex 页号
*@param frm 翻页的表单
*/
function TurnPage(pageIndex,frm){
 numStr  = /^(/d*)?$/; 
 if(frm==null || frm==''){
  frm=document.getElementById('listForm');
 }else{
  frm=document.getElementById(frm);
 }
 //设置点分页时的提交默认值, 1:查找
 frm.smtType.value="1"; 
 
 if(frm!=null && frm.pageIndex!=null){
   if (pageIndex!="goto"){
    frm.pageIndex.value = pageIndex;
   }
   if(numStr.exec(frm.pageIndex.value)!=null && frm.pageIndex.value>0){
    frm.submit();
   }else{
    alert('/u9875/u7801/u8f93/u5165/u9519/u8bef/uff0c/u8bf7/u91cd/u65b0/u8f93/u5165!'); //alert("页码输入错误,请重新输入!)"
   }
 }
 }


 </script>


##分页   要传pageInfo过来
<table>
<!--<table width="100%" border="0" cellpadding="0" cellspacing="0">-->
  <tr>
    <td><span>每页$!pageInfo.pageSize 条&nbsp;&nbsp;共有$!pageInfo.recordCount 条/$!pageInfo.pageCount 页
      ##下一页   尾页
      #if($pageInfo.pageIndex==$pageInfo.prePageNo||$pageInfo.prePageNo==0)
          上一页 首页       
      #else
        <a href="javascript:TurnPage('$pageInfo.prePageNo','listForm')">上一页</a> <a href="javascript:TurnPage('$pageInfo.startNo','listForm')">首页</a>
      #end        
   
   ##for 循环
     #set($beginNo=$pageInfo.rangeMin)
     #set($endNo=$pageInfo.rangeMax) 
   #foreach($i in [$beginNo ..$endNo] )  
       #if($i==$pageInfo.pageIndex)  
       ##不加链接 
       <font color="red">$i</font>
       #else
       ##加上链接
       <a href="javascript:TurnPage('$i','listForm')">$i</a>
       #end
   #end      
   
 ##下一页   尾页
   #if($pageInfo.pageIndex==$pageInfo.nextPageNo||$pageInfo.nextPageNo==0)  
    下一页 尾页
   #else
     <a href="javascript:TurnPage('$pageInfo.nextPageNo','listForm')">下一页</a> <a href="javascript:TurnPage('$pageInfo.endNo','listForm')">尾页</a>
   #end   
     &nbsp;&nbsp;
    <input value="$!pageInfo.pageIndex" name="pageIndex" type="text" size="4" style="height:18px;"  οnkeypress="if(event.keyCode=='13'){ document.getElementById('go').focus(); }"/>
      &nbsp;&nbsp;<input type="button" name="go"  οnclick="TurnPage ('goto','listForm')" value="确定"  />
    </span>
</td>
    </tr>
  </table>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值