大家好,欢迎来到IT知识分享网。
1.什么是JSTL
TL是EL的扩展,要想使用TL,需要导入jar包,其实使用EL的函数库也是需要导入jar包的.但是如果使用的是MyEclipse进行开发,则它会自动帮你导入jar包,但是如果跟我一样使用的是eclipse加上javaee的话,那就需要手动导入jar包了.
jar包导入的环境就是WEB-IN下面的lib文件夹里面.
2.使用JSTL的步骤
①利用tagib指令导入JSTL标签库
JSTL有四大库:
分别是core,fmt(负责格式化,数字日期)
另外还有两个xml以及sql 但是已经过时了.
②core标签库的前缀一般是c
它的常用标签有如下:
out,用于输出
<c:out value="aaa"/>
输出aaa
<c:out value="${aaa}"/>
相当于${aaa}
<c:out value="${aaa}" default="xxx"/>
当S{aaa}的值不存在的时候,就输出xxx
<c:out value="${aaa}" default="xxx" escapeXML="false"/>
表示假如${aaa}里面的值包含符号<> 的时候不会对该符号进行转义.
转义的情况就是变为了字符串.
不转义的情况就是保持功能,例如<script>alert(“你好”)<script>,这种情况要是不转义,就是会实现js的功能,弹出对话框,
set,用于存储数据
<c:set var="xxx" value="aaa"/>
表示往pageContext里面存储数据.
<c:set var="xxx" value="aaa" scope="session"/>
表示往session里面存入数据
remove 删除数据
<c:remove var="a"/>
表示删除所有域中的name为a的数据
<c:remove var="a" scope="page"/>
表示删除pageContext里面的name为a的数据
url标签
有多种用法
<c:url value="/index.jsp"/>
它会在路径前面自动加上项目名称,然后输出
<c:url value="/index.jsp"> <c:param name="" value=""/> <c:url/>
另外可以带上参数,并且会自动对中文参数做url编码
<c:url value="/index.jsp" var="a" scope="request"/>
一旦加上了var属性就不会输出路径,而是保存在域对象里面.
if标签
<c:if test="${not empty a}"> <c:out value="${a}"/> </c:if>
当test的值为true的时候,执行相关语句.
另外,由于a没有指定域,所以是全域查找
choose标签
<c:choose> <c:when test="">aaaaa</c:when> <c:when test="">aaaaa</c:when> <c:otherwise>aaa</c:otherwise> </c:choose>
相当于switch语句
foreach标签
<c:forEach var="i" begin="1" end="12"> 相关代码 </c:forEach>
该循环从1开始直到12,包含12.这个是每次加一,下面是每次加2
<c:forEach var="i" begin="1" end="12" step="2"> 相关代码 </c:forEach>
另外一种使用方式,用于遍历数组或者集合
<c:forEach items="" var=""> 相关代码 </c:forEach>
其中items表示要遍历的数组或者集合,
var表示每一次遍历的对象
注意items的双引号里面的赋值后面或者前面不要加上空格
其实,forEach标签里面还有一个属性叫作,varStatus,表示循环状态变量
其中用法如下
varStatus="aa" aa.count aa.index aa.first aa.last aa.current
其中varStatus的取值为变量名,他有五个属性.
count,表示已经遍历了的个数 int类型
index表示当前元素的下标 int类型
first 表示是否为第一个元素 boolean类型
last 表示是否为最后一个元素 boolean类型
current 表示的当前元素 object类型
③fmt标签库用于格式化输出,一般是对日期或者数字进行格式化输出
对于日期的格式化输出
<fmt:formatDate value="" pattern=""/>
value:表示一个date对象
pattern 表示输出的格式
对于数字的格式化输出
<fmt:formatNumber value="" pattern=""/>
pattern的取值介绍两种情况
“0.00” 保留小数点的后两位,它会四舍五入.如果不足两位,以0补位
“#.##” 保留小数点的后两位,它会四舍五入,如果不足两位,不补位
3.自定义标签,省略
感谢观看!本期到此结束。
【本文为e安在线合作讲师“刘建恒”原创稿件,转载请联系e安在线】
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/45240.html