jstl的核心标签库

Jstl标签库的配置:将jstl.jar和standard.jar拷贝到WEB-INF/lib下

Jstl的环境:j2ee1.4/servlet2.4/jsp2.0版本上的容器才能运行。

一,jstl的核心标签库

引入jstl的核心标签库

<%@ taglib  prefix=”c” uri=”http://java.sun.com/jsp/jstl/core”%>

信息可以在standard.jar-->META-INF -à c.tld中找到

使用标签,如果要使用scope中的属性值,那么就要用el表达式

二,<c:out/>标签

该标签为输出value内容的标签

value:可以用el表达式取出scope的值;或者直接在value中写入值value=”546”

default:如果value是空,那么就是用default中的默认值

escapeXml:是否输出html,默认为true为不输出

<c:out  value=”${hello}”  default=”123”  escapeXml=”false” />

el表达式自动输出html,所以只有需要默认值的时候采用该标签。

三,<c:set/>和<c:remove/>标签

<c:set/>标签设置value值的标签

var:设置的变量名称

value:设置的变量的值

<c:set value=”123” var=”temp”/>

该变量还可以使用el表达式得到${temp}

<c:remove/>标签删除设置的变量

<c:remove var=”temp”/>

四,<c:if></c:if>分支

在Action中设置值

request.setAttribute(“v1”,1);

request.setAttribute(“v2”,2);

request.setAttribute(“v3”,null);

jsp页面上代码

test:其中的值是判断是否成立的表达式,如果成立则进入c:if中

var:其中的值是一个变量,该变量保存的是test的值,true或者false

<c:if  test=”${v1 < v2}”  var=”v”>

   V1小于v2=>${v}

</c:if>

<c:if test=”${empty v3}” >

  V3是否为空

</c:if>

五,<c:choose>,<c:when>和<c:otherwise>

<c:choose>

   <c:when test=”${v1 < v2}”>

          V1小于v2

</c:when>

<c:when test=”$(v1 > v2)”>

       V1大于v2

</c:when>

<c:otherwise>

       V1等于v2

</c:otherwise>

</c:choose>

这个相当于if..else if..else

六,<c:forEach>

items:表示的是集合

var:表示的是集合中的元素

varStatus:表示的是递增的计数器

begin:从哪个索引开始

end:索引的结束值

step:表示循环的步长

<c:forEach items=”${userlist}” var=”u” varStatus=”vs” begin=”2” end=”8” step=”2”>

   <c:choose>

        <c:when test=”${vs.count %2==0}”>

               <tr bgcolor=”reds”>

</c:when>

<c:otherwise>

       <tr>

</c:otherwise>

   </c:choose>

   <td>

         <c:out value=”${user.username}”/>

   </td>

<td>

         <c:out value=”${user.age}”/>

   </td>

</c:forEach>

假设items里是一个map集合,那么var表示的就应该是一个entryset对象,那么就可以使用${u.key}=>${u.value}取得map的键值。

七,<c:forTokens>

将值分割并且循环输出

items:表示需要分割的字符

deline:按照该值分割

var:分割后集合的中某一个元素

<c:forTokens items=”${strTokens}” deline=”,” var=”v”>

  ${v}

</c:forTokens>

八,<c:catch>

该标签捕获异常

var:其值为异常信息

<c:catch var=”v”>

   <%

        Integer.parseInt(“asdfs”);

%>

</c:catch>

${v}

九,<c:import>

该标签引入文件

url:表示想要引入的页面

<c:import url=””></c:import>

十,<c:url>和<c:param>

<c:url>标签设置url,其中value表示的是url

<c:param>标签设置url传递的值,其中name表示的是传递参数的名称,value表示传递参数的值

value:为请求的url

<c:url value=”192.168.1.101:8080/user_add.jsp”>

    <c:param name=” username” value=”j”/>

    <c:param name=”age”  value=”22”/>

</c:url>

十一,<c:rederect>

该标签为重定向标签

Context:表示的是相对路径的参考位置

url:表示的是相对url

<c:redirect context=”/struts_login” url=”/index.jsp”>

</c:redirect>

原文地址:https://www.cnblogs.com/jinzhengquan/p/1953191.html