本文主要是介绍jsp标签jstl,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
jsp标签&jstl
1.什么是jsp标签
sun公司制定的一种技术规范,利用jsp标签来替换jsp文件中的java代码。好处,jsp页面会更简洁,并且更好维护(比如,将jsp文件交给美工去修改就很不方便)。
可以将jsp标签看做是一个占位符,容器遇到jsp标签之后,会依据标签名找到标签类,然后调用执行标签类中的代码。
使用jsp标签,有两个好处:
a.jsp文件很好维护。
b.方便代码的复用(可以将一些常见的代码封装成一个jsp标签)。
2.jstl是什么?
jstl:java standard taglib(java标准标签库,apache开发的一套标签,捐献给了sun,sun将其命名jstl)。如何使用?(web10_2.e2.jsp)
step1,将jstl标签对应的jar文件拷贝到WEB-INF\lib下。standard.jar jstl.jar
step2,使用taglib引入jsp标签。
演示代码:(web10_2.e2.jsp)
<!-- <%@page pageEncoding="utf-8" contentType="text/html; charset=utf-8" %><%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html><head></head><body>taglib标签的uri属性为命名空间,prefix属性值为此命名空间的简写。<c:if test="${1>0}">hello</c:if></body>
</html>-->
3.jstl中几个核心标签
1)if
<c:if test="" var="" scope="">
标签体(el表达式/java代码)
</c:if>
当test属性值为true,执行标签体的内容,test属性可以使用el表达式。
var属性用来指定绑定名称。
scope属性指定绑定的范围,可以是page、request、session、application。
2)choose
<c:choose>
<c:when test=""> ... </c:when>...
<c:otherwise> ... <./c:otherwise>
</c:choose>
when和otherwise必须要放到choose标签里面才能使用。
when可以出现1次或者多次,otherwise可以出现0次或者1次。
3)forEach
<c:forEach var="" items="" varStatus="">
</c:forEach>
用来遍历集合,其中,items属性用来指定要遍历的集合,可以使用el表达式。var属性用来指定绑定名,绑定范围是pageContext,绑定值是集合中的某个元素。
varStatus属性指定绑定名,绑定范围是pageContext,绑定值是一个由容器创建的一个对象,该对象封装了当前迭代的状态。比如,该对象提供了getIndex,getCount方法,其中getIndex会返回当前迭代的元素的下标(从0开始),getCount会返回当前迭代的次数(从1开始)。
4.jsp标签是如何运行的?
容器依据命名空间找到标签的描述文件(.tld文件),接下来,依据标签的名称找到标签类的类名,然后将该标签实例化,最后,调用标签实例的相应的方法。
注:容器会先从WEB-INF下查找,如果找不到,还会查找WEB-INF\lib下的jar文件。
5.javaee5.0当中,如何使用el表达式和jstl
j2ee 1.4 --> servlet 2.4 --> tomcat 5.0
javaee 5.0 --> servlet 2.5 --> tomcat 6.0
在javaee5.0以上版本当中,已经将jstl标签对应的jar文件包含进来了,不用再去将这些jar文件拷贝到WEB-INF\lib下。
这篇关于jsp标签jstl的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!