JSTL核心标签库

简介: 这篇文章详细介绍了JSTL核心标签库中的表达式标签,包括输出、变量设置、变量移除、导入、重定向、传递参数、条件判断、条件选择、循环等标签的语法和使用示例,旨在简化JSP程序的开发。

文章目录

  • 表达式标签
    • 1、``输出标签
    • 2、``变量设置标签
    • 3、``变量移除标签
    • 4、``导入标签
    • 5、``重定向标签
    • 6、``传递参数标签
    • 7、``条件判断标签
    • 8、``条件选择标签
    • 9、``标签
    • 10、``其他条件标签
    • 11、``循环标签

简化JSP程序的开发

表达式标签

1、<c:out>输出标签

将表达式的值输出到jsp页面中,类似<%=表达式%>或者EL表达式${expression}

语法格式1(没有标签体):

<c:out value="expression" [escapeXml = " true | false]" ]  [default = "defaultValue"] />

语法格式2(有标签体):

<c:out value="expression" [escapeXml = " true | false]" ]   >
   default = "defaultValue"
</c:out>
  • value属性:要输出的表达式或者变量
  • escapeXml属性:指定是否转换字符,默认是true、如果是true就解析
  • default属性:当value的值为null的时候、显示出来。就像那个前端显示图片、如果没有图片显示,就显示相应的文字。

举例子:<c:out value="水平线 <hr> excapeXml ="false" ></c:out>
结果就是水平线


<c:out value="水平线 <hr> excapeXml ="true" ></c:out> 结果是 水平线 <hr>

2、<c:set>变量设置标签

语法格式1:在指定范围内将变量值存储到变量中

<c:set var = "变量名" value = " 变量值" scope="范围"/>

语法格式2:存储某个具体对象的内容

<c:set target="目标对象" property="属性名" value="值"/>
  • var属性:指定变量名,可以指定value属性的值
  • vlaue属性:指定变量的值
  • scope属性:指定变量的作用域,默认page、request、session和application
  • target属性:存储变量值或者标签体的目标对象,JavaBean或者map集合对象
  • property属性:指定属性名

举例子:

<jsp:useBean id="user" class="com.zheng.User"/>
//设置值
<c:set target="${user}" property="name" > admin</c:set>

3、<c:remove>变量移除标签

语法格式:

<c:remove var="name" scope="范围" />
  • var属性:要移除的变量名
  • scope属性:在哪个范围内,如果不指定在哪个范围内,则在page、request、application、session中查找并且移除。

注意:找不到要移除的变量,不会抛出异常

4、<c:import >导入标签

可以导入站内或其他网站的静态和动态文件到web页面中。

5、<c:redirect>重定向标签

重定向、可以将客户端发出的request请求重定向到其他URL服务端。
语法格式1:(简单的页面跳转)

<c:redirect url="url" context="/context"/>

语法格式2:将客户请求重定向到目标路径

<c:redirect url="url" context="/context">
    <c:param/>
    //可以有多个
</c:redirect>
  • url属性:指定目标url
  • context属性:在使用相对路径访问外部资源context资源时,指定资源的名字

举例子1:

<c:redirect url="loing.jsp"/>//跳转到登录页

举例子2:

<c:redirect url="url" context="MyServlet">
    <c:param name="action" value="query"/>
</c:redirect>

6、<c:param>传递参数标签

语法格式:

<c:param name="action" value="query"/>
  • name属性:指定参数名
  • value属性:指定参数值

举列子:
假如重定向到main.jsp页面

<c:redirect url="main.jsp" >
    <c:param name="user" value="admin"/>
</c:redirect>

在main.jsp获取参数值

${param.user}

7、<c:if>条件判断标签

语法格式1:

<c:if test="condition" var="name" scope="page|reqeust|session|application" />

语法格式2:

<c:if test="condition" var="name" scope="page|reqeust|session|application" >
    标签题
</c:if>
  • test属性:必选属性,条件表达式
  • var属性:可选、指定变量名,保存test属性的判断结果
  • scope属性:变量的有效范围

8、<c:choose>条件选择标签

语法格式:

<c:choose>
    标签体//<c:when>标签和<c:otherwise>标签组成
</c:choose>

理解:就相当于if -else if -else if- else。
当when不成立执行下一个when,如果成立就执行when标签体的内容,如果所有的when都不成立,就执行otherwise标签中的内容

9、<c:when>标签

语法格式

<c:when test="condition">
    标签体
</c:when>
  • test属性:条件表达式

10、<c:otherwise>其他条件标签

语法格式

<c:otherwise>
    标签体
</c:otherwise>

11、<c:forEach>循环标签

语法格式:

<c:forEach items="data" var = "name" begin="start" end =" finish" step="step" varStatus ="statusName">
    标签题
</c:forEach>
  • items属性:必选属性,指定被循环遍历的对象
  • var属性:指定循环体的变量名
  • begin属性:指定循环的起始位置
  • end属性:指定循环的终止位置
  • step属性:指定循环的步长
  • varStatus属性:指定循环的状态变量
  • 标签体属性:jsp页面可以显示的任何元素
相关文章
|
Java Apache
21JavaWeb基础 - JSTL技术
21JavaWeb基础 - JSTL技术
50 0
|
XML SQL Java
JavaWeb--EL表达式&JSTL 标签库
JavaWeb--EL表达式&JSTL 标签库
77 0
|
Java 数据安全/隐私保护
|
SQL XML Java
JSTL标签库(JSP标准标签库)
JSTL(JSP Standard Tag Library,核心标签库)是 JSP 标签的集合,它封装了 JSP 应用的通用核心功能。 JSP 标签是一组与 HTML 标签相似,但又比 HTML 标签强大的功能标签。JSTL 用来简化 JSP 开发,可以使我们不用嵌入 Java 代码就能够开发出复杂的 JSP 页面。 JSTL 包含 5 类标签库:core 标签库、fmt 标签库、fn 标签库、XML 标签库和 SQL 标签库。这 5 类标签库基本覆盖了 Web 开发中的所涉及的技术展示。
|
Java API 数据格式
JavaWeb--EL表达式&JSTL 标签库(三)
JavaWeb--EL表达式&JSTL 标签库(三)
159 0
JavaWeb--EL表达式&JSTL 标签库(三)
|
Java
JavaWeb--EL表达式&JSTL 标签库(二)
JavaWeb--EL表达式&JSTL 标签库(二)
107 0
JavaWeb--EL表达式&JSTL 标签库(二)
|
Java
JavaWeb--EL表达式&JSTL 标签库(一)
JavaWeb--EL表达式&JSTL 标签库(一)
96 0
JavaWeb--EL表达式&JSTL 标签库(一)
|
JavaScript Java
JSTL常用标签
JSTL常用标签
162 0
JSTL常用标签
|
Java
JSP第五篇【JSTL的介绍、core标签库、fn方法库、fmt标签库】(二)
JSTL作为最基本的标签库,提供了一系列的JSP标签,实现了基本的功能:集合的遍历、数据的输出、字符串的处理、数据的格式化等等!
99 0
JSP第五篇【JSTL的介绍、core标签库、fn方法库、fmt标签库】(二)
|
Java 开发者
Struts2的控制标签库和数据标签库(六)下
Struts2的控制标签库和数据标签库(六)
123 0
Struts2的控制标签库和数据标签库(六)下

热门文章

最新文章