首页 > 代码库 > JSP中获取jstl中的数据

JSP中获取jstl中的数据

我们在编程JSP时,有时会需要访问jstl中的数据,或者说是el表达式中的数据。

比如,

<c:forEach    varStatus="data1" var="data" items="${alltemphotmeltdata}">
<tr>
<td>
${data.hNo }
</td>
<td>
${data.hDate }
</td>
<td>
${data.hHour }
</td>
<td>
${data.hEnd}
</td>
<td>
${data.hOperat }
</td>

</tr>

</c:forEach >

在上面代码段中,若想获取el表达式中的值进行处理时可以这样做:

<td>
<%
  String HGPS_latitude=((HotmeltData)pageContext.getAttribute("data")).getHGPS_latitude().toString().replace(".","").replace("度",".").replace("分","");
  String HGPS_longitude=((HotmeltData)pageContext.getAttribute("data")).getHGPS_longitude().toString().replace(".","").replace("度",".").replace("分","");
  float latitude=Float.parseFloat(HGPS_latitude.substring(0, 2))+Float.parseFloat(HGPS_latitude.substring(2, HGPS_latitude.length()))/60;
  float longitude=Float.parseFloat(HGPS_longitude.substring(0, 3))+Float.parseFloat(HGPS_longitude.substring(3, HGPS_longitude.length()))/60;
%>
<a href=http://www.mamicode.com/"http://api.map.baidu.com/marker?location=,&title=定位&content=百度&output=html" target="_blank">地图定位

</td>

上面红色的地方就是可以获得el中的数据。

正如上面所说,可以利用
pageContext.getAttribute()
request.getAttribute()
session.getAttribute()
application.getAttribute()
得到值。 

又如:


<c:set var="a" value=http://www.mamicode.com/"hello a" scope="request" />
<c:set var="b" value=http://www.mamicode.com/"hello b"/>

<%
out.print(request.getAttribute("a") + "<br/>");
out.print(pageContext.getAttribute("b"));
%>

同理,也可以从jsp中得到变量放入jstl的变量中。