JSTL标准标签库之核心标签(三)

来源:互联网 发布:淘宝质量好的男装店 编辑:程序博客网 时间:2024/06/01 10:01
<c:>核心标签库(不会的可以查看www.w3school.cc这个文档)


remove标签:将一个变量从范围(appliction,pageContext,session,request)中移除
举个例子:
<c:set var="salary" scope="session" value="${2000*2}"/>
<p>salary 变量值: <c:out value="${salary}"/></p>
<c:remove var="salary"/>
<p>删除 salary 变量后的值: <c:out value="${salary}"/></p>
运行结果为
salary 变量值: 4000


删除 salary 变量后的值:


注意:Person zhang = new Person()
      session.setAttribute("p",zhang);
      
     <jsp:useBean id="user" scope="page" class="com.jsp.ch3.TestBean"/>
(其中id为JavaBean的名字,scope为其范围,class为所属的类)


上面两种方法都可以创建JavaBean! JSP中常常使用的是第二种方法!




<c:catch> 标签主要用来处理产生错误的异常状况,并且将错误信息储存起来
举个例子:
<c:catch var ="catchException">
   <% int x = 5/0;%>
</c:catch>


<c:if test = "${catchException != null}">
   <p>异常为 : ${catchException} <br />
   发生了异常: ${catchException.message}</p>


</c:if>
运行结果为:
异常为 : java.lang.ArithmeticException: / by zero 
发生了异常: / by zero
<c:if>标签判断表达式的值,如果表达式的值为 true 则执行其主体内容
举个例子:
<c:set var="salary" scope="session" value="${2000*2}"/>
<c:if test="${salary > 2000}">
   <p>我的工资为: <c:out value="${salary}"/><p>
</c:if>
运行结果为:
我的工资为: 4000
<c;foreach>标签:处理循环
标签具有以下一些属性:
items 要被循环的信息
意思就是:items为要进行迭代的集合
它所支持的集合类型以及迭代的元素如下:
java.util.Collection(单类型)
java.util.Map(双类型)
java.util.Iterator
java.util.Enumeration
Object实例数组
基本类型值数组
用逗号定界的String
javax.servlet.jsp.jstl.sql.Result


var :代表当前正在处理的元素(在迭代体重可以使用的变量的名称,用来表示每一个迭代变量,类型为String)


varStatus:迭代变量的名称,用来表示迭代的状态,可以访问到迭代自身的信息。
current:当前这次迭代的(集合中的)项
index:当前这次迭代从0开始的迭代索引
count:当前这次迭代从1开始的迭代计数
first:用来表明当前这轮迭代是否为第一次迭代,该属性为boolean类型
last:用来表明当前这轮迭代是否为最后一次迭代,该属性为boolean类型
begin:begin属性的值
end:end属性的值
step:step属性的值
begin:如果指定了items,那么迭代就从items[begin]开始进行迭代,如果没有指定items,那么就从begin开始迭代,它的类型为整数。
end:如果指定了items,那么迭代就从items[end]结束迭代,如果没有指定items,那么就从end结束迭代,它的类型也为整数。
step:迭代的步长
举个例子:
<c:forEach var="i" begin="1" end="5">
   Item <c:out value="${i}"/><p>
</c:forEach>
运行结果为:
Item 1
Item 2
Item 3
Item 4
Item 5


<c:choose>标签与Java switch语句的功能一样,用于在众多选项中做出选择。
switch语句中有case,而<c:choose>标签中对应有<c:when>,switch语句中有default,而<c:choose>标签中有<c:otherwise>。
举个例子:
<c:set var="salary" scope="session" value="${2000*2}"/>
<p>你的工资为 : <c:out value="${salary}"/></p>
<c:choose>
    <c:when test="${salary <= 0}">
       太惨了。
    </c:when>
    <c:when test="${salary > 1000}">
       不错的薪水,还能生活。
    </c:when>
    <c:otherwise>
        什么都没有。
    </c:otherwise>
</c:choose>
运行结果:
你的工资为 : 4000


不错的薪水,还能生活。
原创粉丝点击