一、JSTL概述
JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。JSTL支持通用的、结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签。 除了这些,它还提供了一个框架来使用集成JSTL的自定义标签。根据JSTL标签所提供的功能,可以将其分为5个类别:核心标签、格式化标签、SQL 标签、XML 标签、JSTL 函数。
关于如何导入JSTL核心标签库以及核心标签基本使用方法可以参看Web学习笔记03:JSP元素。
二、EL概述
1、为什么需要EL?
JavaBean在JSP中的局限,获取JavaBean属性必须要实例化,还得强制类型转化。
<%
Employee employee = (Employee) request.getAttribute(“employee”);
Computer comp = employee.getComputer();
String manufacturer = comp.getManufacturer();
%>
2、什么是EL表达式?
(1)EL的含义
Expression Language(表达式语言)
(2)EL的功能
替代JSP页面中的复杂代
(3)EL的语法
${ EL exprission }
${ bean.name } 或 {bean.name}实质是调用bean的getName()方法
[ ]或 . 运算符获取对象属性、获取对象集合中的数据
例如,在Session中保存了一个(list)集合users,${sessionScope.user[1]}
(4)EL的特点
自动转换类型
EL得到某个数据时可以自动转换类型
对于类型的限制更加宽松
使用简单
相比较在JSP中嵌入Java代码,EL应用更简单
三、案例演示:标签库与表达式语言
1、创建Web项目JSTLELDemo
2、在web目录里创建首页文件index.html
3、在web目录里创建演示页面demo01.jsp
<%--
Created by IntelliJ IDEA.
User: lenovo
Date: 2020/1/6
Time: 14:01
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>EL演示01</title>
</head>
<body>
<%
String username = "李元霸";
pageContext.setAttribute("username","张三丰");
request.setAttribute("username","李世民");
session.setAttribute("username","郑晓雯");
application.setAttribute("username","唐雨涵");
%>
利用JSP表达式输出变量的值<br/>
姓名:<%= username%><br/>
姓名:<%=pageContext.getAttribute("username")%><br/>
姓名:<%=request.getAttribute("username")%><br/>
姓名:<%=session.getAttribute("username")%><br/>
姓名:<%=application.getAttribute("username")%><br/>
利用EL表达式输出变量的值<br/>
姓名:${username}
姓名:${pageContext.username}
姓名:${requestScope.username}
姓名:${sessionScope.username}
姓名:${applicationScope['username']}
</body>
</html>
4、启动查看效果
报错!!!待解决!!!
来源:CSDN
作者:你好杰克。
链接:https://blog.csdn.net/weixin_44202489/article/details/103856328