Jslfl【软件开发技术笔记】

jstl与jsp脚本间的数据传递

可能这个标题没有确切表达我的意思,直接说用处,
后台把一个对象,如List通过request传到jsp里,简单的方法就是通过jstl遍历出Map,再直接用el表达式取得某key对应的值,像这样

1
2
3
<c:forEach items="${list }" var="ogj">  
 <span>${ogj.name}</span><!-- 取得Map中key为"name"的值 -->  
</c:forEach>

但在某些场合,需要对取出来的值进行其它处理,并且这处理用jstl不太方便或显得麻烦,或者是条件不允许,这时会选择用jsp脚本来,现在就要在jsp脚本中得到这个值,如:

1
2
3
4
5
6
<c:set scope="request" var="vobj" value="${ogj.name}"></c:set>  
<%  
 String vStr = request.getAttribute("vobj").toString();  
 //对vStr的处理操作...  
 
%>

也有可能在某些时候,想用jstl来遍历处理jsp脚本里的变量,可以主动用<% request.setAttribute("var",list); %>设置到一个作用域,再用标签遍历作用域里的这个对象,这样可以减少脚本把html代码的分割.

,

Comments are currently closed.