JSTL

栏目: JSP · 发布时间: 6年前

内容简介:关于对本次学习的JSTL进行总结在

关于对本次学习的JSTL进行总结

下载

mvnrepository 中,直接搜索jstl,,找到下载量最高的,下载1.2版本。

JSTL

下载完导入到项目里面就好了

jstl概述

jstl是apache对EL表达式的扩展
使用需导jar包

JSTL标签库

  • core:核心标签库
  • fmt:格式化标签库
  • sql:数据库标签库(过时)
  • xml:xml标签库(过时)

使用taglib指令导入标签库

  • 在使用标签的JSP页面中使用taglib指令导入标签库

    下面是导入JSTLcore标签库:
       <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
  • prefix="c",可以随便给值,但大家都用的c
  • uri="http://java.sun.com/jstl/core",标签库的uri

<c:out>:输出

<c:out value="${code }"/>

value:可以是字符串常量,也可以是EL表达式

default:当要输出的内容为null时,会输出default指定的值

escapeXml:默认值为true,表示转义!

<c:set>:设置(创建域的属性)

<c:set var="a" value="hello" scope="session"/>

在session中添加name为a,value为hello的数据。

value:变量值,可以是EL表达式

scope:域,默认为pageContext,可选值:pageContext、request、session、application

<c:remove>:删除域变量

<c:remove var="a" scope="page"/>

删除pageContext中name为a的数据!

<c:url>

<c:url value="/AServlet"/>

输出:/项目名/AServlet

子标签 <c:param> ,用来给url后面添加参数

<c:url value="/AServlet">
    <c:param name="username" value="abc"/>
   </c:url>

输出:/项目名/AServlet?username=abc&password=123

<c:if>

对应 java 中的if语句

<c:if test="布尔类型">...</c:if>,当test为值时,执行标签体内容!

<c:choose>

它对应java中的if/else if/ ... /else

<c:choose>
  <c:when test="">...</c:when>
  <c:when test="">...</c:when>
  <c:when test="">...</c:when>
   ... 
  <c:otherwise> ...</c:otherwise>
</c:choose>

<c:forEach>

<c:forEach var="i" begin="1" end="10"> 
<c:out value="${i}" /> 
</c:forEach>

var:循环变量

begin:设置循环变量从几开始。

end:设置循环变量到几结束。

step:设置步长!等同与java中的i++,或i+=2。step默认为1

用来输出数组、集合

<c:forEach items="${strs }" var="str">
     ${str}<br/>
</c:forEach>

items:指定要循环谁,它可以是一个数组或一个集合

输出循环状态

使用 varStatus 来创建循环状态变量

  • count:循环元素的个数
  • index:循环元素的下标
  • first:是否为第一个元素
  • last:是否为最后一个元素
  • current:当前元素

    <c:forEach items="${list }" var="ele" varStatus="vs">
       ${vs.index} ${vs.count } ${vs.first } ${vs.last } ${vs.current }<br/>
       </c:forEach>

fmt:格式化:日期、数字(格式化库)

导库

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

格式化时间

<%
    Date date = new Date();
    request.setAttribute("date", date);

%>

<fmt:formatDate value="${requestScope.date }" pattern="yyyy-MM-dd HH:mm:ss"/>

把当前时间设置格式为yyyy-MM-dd HH:mm:ss,从result域中查找date。

格式化数字

<%
    request.setAttribute("num1", 3.1415926);
%>

<fmt:formatNumber value="${requestScope.num1 }" pattern="0.000"/><br/>
<fmt:formatNumber value="${requestScope.num1 }" pattern="#.###"/>

0.000:保留小数点后3位,它会四舍五入!如果不足3位,以0补位!

#.###:保留小数点后3位,它会四舍五入!如果不足3位,不补位!


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java夜未眠

Java夜未眠

蔡学镛 / 电子工业出版社 / 2003-4 / 20.00元

本书是一本散文集。作为一名资深程序设计师,作者走笔清新面独特,简练俏皮的文字下,是作者对工作,对人生的理性思考。书中收录的文章内容贴近程序员的生活,能令读者产生强烈共鸣。此外,书中的部分文章也以轻松的风格剖析了学习Java技术时的常见问题,并以专家眼光和经验推荐介绍了一批优秀的技术书籍,旨在帮助读者兴趣盎然地学习Java。一起来看看 《Java夜未眠》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具