EL表达式
1.EL表达式是干什么的?
之前三层的时候就说过了,每一层做每一层自己的事情,JSP专注于显示,在JSp中实现HTML实现不了的功能,比如:m.get(i).getName()
2.如何使用EL表达式?
a) 创建一个web工程
b) 导入需要的jar包
c) 编写三层代码
d) 编写JSP页面
e) 导入标签库
i. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
f) 写上对应的EL表达式。
<c:forEach items="${list}" var="m">
<tr>
<td align="center">
${m.id }
</td>
<td align="center">
${m.name }
</td>
<td align="center">
${m.state }
</td>
<td align="center">
${m.dates }
</td>
<td align="center">
${m.count }
</td>
</tr>
</c:forEach>
EL表达式比较人性化,以前很多复杂代码都省去。比如session.get....——>sessionScope.(可以省略)
属性不需要通过get方法获得,直接写属性名就可以了。
3.Jstl
for、if,JSP的标签库,通过标签库,可以实现一些java代码。
<c:forEach items="${list}" var="m">
Items属性:就是我们要遍历哪个集合,var属性是我们通过什么取出集合中的值
For(String s : list) items---->list var -------->s
以上是list的遍历方式
要遍历map,需要通过map.value.属性名的方式获取
<c:out value="<a>123</a>" escapeXml="false"></c:out>
Value中的值是否按照原本的样式输出。类似于转译符
总结:在EL表达式中,直接${属性名}可以获得request、session等等都可以获得。sessionScope.属性,这个操作是告诉电脑我直接在session中查找,不用去其他作用域查找。
${requesrScope.属性名}------>request.getAttribute(“属性名”);
${sessionScope.属性名}------->session.getAttribute(“属性名”);