获取c:foreach循环中的row对象


转自:http://java.chinaitlab.com/base/840093.html


 <c:forEach items="${retObject['BILL_HEADER']}"    var="row" >
  <%System.out.println(pageContext.getAttribute("row")); %>
  <td >${row}</td>
  </c:forEach>

  有两点感悟:

  1,retObject是一个map类型变量,el可以这么取值,

  2,row是放在了pageContext中,想在java的尖括号中用的话可以像上面那样取。(虽然这种要求很少见);


很少见的要求被我们发现了。衷心地感谢作者。

展开阅读全文

游标循环中if判断语句

11-01

[img=http://hi.csdn.net/attachment/201011/1/7744478_12885804209K63.png.thumb.jpg][/img]rnrn@receiver这样在表格中 ,在下面的存储过程中用游标循环,其中在if not exists(select * from MSG_Sentbox where msgTitle=@sentContentrn and Receiver= @str and ActualSendTime >=dateadd(minute,-10,getdate()))rn这里判断的时候,当循环判断到第一个@receiver 在MSG_Sentbox 中已经exists的时候就直接跳出游标的循环了,怎么样才能让它跳过然后继续循环下一个呢?rnrn[code=SQL]rnif exists(select 线路 from Result group by 线路 having count(DISTINCT 号码)>=2) rn --elsern beginrn declare L cursor -- 创建游标 Lrn static rn for select 线路 from Result group by 线路 having count(DISTINCT 号码)>=2rn open L --打开游标rn fetch next from L into @LineNum--提取上次提取行的下一行 rn while(@@fetch_status=0)rn beginrn SET @sentContent='线路' + @LineNum + ':' + '多条塔杆同时收到断电短信,可能为线路停电或电线被盗,请注意确认!'rn declare s cursor -- 创建游标 Srn static rn for select a from dbo.fn_split(@receiver,',')rn open s --打开游标rn fetch next from s into @str --提取上次提取行的下一行rn while(@@fetch_status=0) --循环手机号码,并各自插入到MSG_Outbox中 rn begin rn if not exists(select * from MSG_Sentbox where msgTitle=@sentContentrn and Receiver= @str and ActualSendTime >=dateadd(minute,-10,getdate()))rn -- return -2rn -- elsern beginrn INSERT INTO MSG_Outbox (Receiver,MsgType,MsgTitle,MMSContentLocation,SendTime) VALUES(@str,0,@sentContent,'',getdate())rn fetch next from s into @str rn endrn endrn close s --关闭游标rn deallocate s --删除游标,释放资源 rn fetch next from L into @LineNum rn endrn close L --关闭游标rn deallocate L --删除游标,释放资源rnendrn[/code]rn 论坛

没有更多推荐了,返回首页