1、JSTL标准标签:(Jsp Standard Tag Libary)
2、必须导入JSTL的jar包。standard.jar & jstl.jar
3、主要包括:
***Core:核心**Fmt:国际化
SQL:数据库操作
XML:xml操作
**fn:EL函数库
4、fn看链接-----点击
5、c:if
作用:判断是否为true,如果为true,那么标签的主体内容就会显示。
属性:
test:必须的。要求必须是boolean的。支持表达式(EL或Java表达式)
var:保存test运算结果的变量
scope: 保存的域范围。默认是page
c:forEach
遍历:数组、List、Set、Map
属性:
items:要遍历的目标对象。支持表达式
var:变量名。指向当前遍历的集合中的一个元素
begin:开始的索引(含)
end:结束的索引(含)
step:步长。默认是1
varStatus:取一个名字,引用了一个对象。
该对象有以下方法:
int getIndex():当前记录的索引号。从0开始
int getCount():当前记录的顺序。从1开始
boolean isFirst():是否是第一条记录
boolean isLast():是否是最后一条记录
举例:
数组:
<%
String str[] = {"a","b","c"};
pageContext.setAttribute("str",str);
%>
<c:forEach items="${str}" var="s">
${s}<br/>
</c:forEach>
<hr/>
集合:
<%
List list = new ArrayList();
list.add("aa");
list.add("bb");
list.add("cc");
pageContext.setAttribute("list",list);
%>
<c:forEach items="${list}" var="s">
${s}<br/>
</c:forEach>
<hr/>
<span style="white-space:pre"> </span><%
Set set = new HashSet();
set.add("aaa");
set.add("bbb");
set.add("ccc");
pageContext.setAttribute("set",set);
%>
<c:forEach items="${set}" var="s">
${s }<br/>
</c:forEach>
<hr/>
<%
Map map = new LinkedHashMap();
map.put("a","aaaa");
map.put("b","bbbb");
map.put("c","cccc");
pageContext.setAttribute("map",map);
%>
<!-- var指向的类型是Map.Entry类型的 -->
<c:forEach items="${map}" var="me">
${me.key}=${me.value}<br/>
</c:forEach>
<hr/>
<%
String s1[] = {"a","b","c","d","e","f"};
pageContext.setAttribute("s1",s1);
%>
<c:forEach items="${s1}" var="s" begin="1" end="4" step="2">
${s}<br/>
</c:forEach>
<hr/>
<c:forEach items="${s1}" var="s" step="2">
${s}<br/>
</c:forEach>
<hr/>
<c:forEach begin="1" end="100" var="s">
${s}
</c:forEach>