jstl学习总结之基础篇

JSTL全称:JavaServer Pages Standard Tag Library


JSTL标签分为四大类:标准标签;国际化I18N标签;SQL标签;XML标签。


<!--JSTL中的类库 -->
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<c:out value="${data}" default="没有数据" escapeXml="true"/><br>
注:escapeXml="true" 则将文本按照普通文件显示。False:如果文本中存在HTML数据,则进行解析。

<c:set  var=“name“  value=“zhangsan“  scope=“page”/>   (相当于:
pageContext.setAttribute(“name”,”zhangsan”))
将值zhangsan存储到变量name, name为作用域pageContext中的一个属性。

<c:set target="${u}" property="pwd" value="123" ></c:set>
设置已有的EL变量u的属性pwd的值为123

<c:remove var="sampleValue" scope="session"/> 相当于:session.removeAttribute("sampleValue")


<c:if test="${1==1}" var="result" scope="page">
  1是等于1的<br>
  </c:if>
  判断结果<c:out value="${result}"/>


<c:choose>
  <c:when test="${param.name == 'Luck'}">
  HI Luck!
  </c:when>
  <c:when test="${param.name == 'Andy'}">
  HI Andy
  </c:when>
  <c:otherwise>
  不认识
  </c:otherwise>
  </c:choose>


<%
              List list = new ArrayList();
              for(int i=0;i<20;i++){
                     list.add("A:"+i);
              }
              pageContext.setAttribute("li",list);
        %>
<c:forEach items="${li}"  var="a" begin="5" end="13" step="3"  varStatus="idx">
               <b>${a}</b>
               <c:if test="${(idx.index+1)%5= =0}">
                   <br>
               </c:if>
</c:forEach>

<c:forTokens>和<c:forEach>功能类似,也是迭代,差别在于items属性只能存放String类型

<%
  String str="A,B*C,D;E;F1ABC";
  pageContext.setAttribute("str",str);
%>
  <body>
  <c:forTokens items="${str}" delims=",*;1" var="s">
  ${s}<br>
  </c:forTokens>
  </body>

<c:import>类似<jsp:include>,差别在于<jsp:include>只可以包含属于同一个web应用的文件和资源,而<c:import>可以包含其他网站的文件和资源
<body>
  <c:import url="http://www.163.com"  charEncoding="GBK" scope="page" var="register"/>
  输出结果<br>
  ${register}
</body>


JSTL标签分四种,其中标准标签是最常用的
标准标签可以完成以前需要使用Java代码完成的常见但复杂的操作,比如判断,遍历,循环等等


Jsp中的跳转总结:
重定向(地址栏改变):

response.sendRedirect(“02.jsp”);   

<c:redirect url="02.jsp"></c:redirect>   

response.setHeader(“refresh”,”3;URL=02.jsp”);
请求转发(地址栏不变):
request.getRequestDispatcher("02.jsp").forward(request, response);
<jsp:forward page="02.jsp"/>
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值