El+jstl入门
一、 el + jstl 入门
el 作为一种表现层的技术,防止了null空指针的异常。如果发现为null,他就不输出了。
- EL 全名为Expression Language。它是一种数据访问语言
el 表达式
- EL 能实现如下功能:
1) 使用变量访问web域中存储的对象 ${user }
2) 访问javabean的属性 ${user.address.city }
3) 执行基本的逻辑运算
4) 直接使用隐式对象
5) 调用 el 函数
- el 表达式用在哪里
1) 在 jsp 页面直接输出数据
2) 在标签中使用el直接为属性赋值
- el 表达式获取数据
在jsp页面使用el表达式可以轻松地获得web域中的对象
并对 javabean 、 数组、 list 、 map 进行取值
- 需要对 web 域中的 list 和map 集合进行迭代就需要结合 jstl 迭代标签
Jstl入门
JSTL是sun公司开发的一套标签库
使用JSTL可以在页面中实现一些简单的逻辑,从而替换页面中的脚本代码
在页面中使用JSTL标签需完成以下2个步骤:
1) 导入jstl.jar和standerd.jar这两个JSTL的jar文件。
2) 在JSP页面中使用<%@ taglib uri=“” prifix=“” %>元素导入标签库。
最常用的 jstl 标签为 forEach 和 if 标签
<c:foreach var=”” items=””>
<c:if test=””>
-
el表达式可以进行逻辑运算
- el表达式中的保留关键字
二、 el 中的11 个隐式对象
隐含对象名称
描 述
pageContext
对应于JSP页面中的pageContext对象
pageScope
代表page域中用于保存属性的Map对象
requestScope
代表request域中用于保存属性的Map对象
sessionScope
代表session域中用于保存属性的Map对象
applicationScope
代表application域中用于保存属性的Map对象
param
表示一个保存了所有请求参数的Map对象
paramValues
表示一个保存了所有请求参数的Map对象,它对于某个请求参数,返回的是一个string[]
header
表示一个保存了所有http请求头字段的Map对象
headerValues
同上,返回string[]数组。注意:如果头里面有“-” ,例Accept-Encoding,则要headerValues[“Accept-Encoding”]
cookie
表示一个保存了所有cookie的Map对象
initParam
表示一个保存了所有web应用初始化参数的map对象
隐式对象的具体用途
- pageContext
获得servlet上下文路径 (web应用名称)
${pageContext.request.contextPath }
- pageScope、requestScope、sessionScope、applicationScope
准确地获得四个域中的对象,用于取值
- param、paramValues
获得请求参数,一般用于做表单的回显
- header、headerValues
获得请求消息头
- cookie
获得浏览器发送的cookie
Cookie也是map集合,key是cookie的name value是对应的cookie对象
- initParam
获得web 初始化参数