JSP
Java Server Pages,一种动态的网页技术,其中既可以定义 HTML、JS、CSS等静态内容,还可以定义 Java代码的动态内容
JSP = HTML + Java
EL 表达式
主要功能:获取数据
语法:$ { expression }
${brands}
JavaWeb中的四大域对象:
- page:当前页面有效
- request:当前请求有效
- session:当前会话有效
- application:当前应用有限
el 表达式获取数据会一次从这4个域中寻找,直到找到为止
JSTL标签
JSP标准标签库(Jsp Standarded Tag Library) ,使用标签取代JSP页面上的Java代码
<c:out>
用于在JSP中显示数据,就像<%= ... >
<c:set>
用于保存数据
<c:remove>
用于删除数据
<c:catch>
用来处理产生错误的异常状况,并且将错误信息储存起来
<c:if>
与我们在一般程序中用的if一样
<c:if test="${flag == 1}">
男
</c:if>
<c:if test="${flag == 2}">
女
</c:if>
<c:choose>
本身只当做<c:when>和<c:otherwise>的父标签
<c:when>
<c:choose>的子标签,用来判断条件是否成立
<c:otherwise>
<c:choose>的子标签,接在<c:when>标签后,当<c:when>标签判断为false时被执行
<c:import>
检索一个绝对或相对 URL,然后将其内容暴露给页面
<c:forEach>
基础迭代标签,接受多种集合类型
<c:forEach items="${brands}" var="brand">
<tr align="center">
<td>${brand.id}</td>
<td>${brand.brandName}</td>
<td>${brand.companyName}</td>
<td>${brand.description}</td>
</tr>
</c:forEach>
for (Brand brand : brands) {
Integer id = brand.getId();
String imgUrl = brand.getImgUrl();
String brandName = brand.getBrandName();
String companyName = brand.getCompanyName();
}
<c:forTokens>
根据指定的分隔符来分隔内容并迭代输出
<c:param>
用来给包含或重定向的页面传递参数
<c:redirect>
重定向至一个新的URL.
<c:url>
使用可选的查询参数来创造一个URL
<c:forEach>, <c:forTokens> 标签
<c:forEach>标签有如下属性:
属性 描述 是否必要 默认值
items 要被循环的信息 否 无
begin 开始的元素(0=第一个元素,1=第二个元素) 否 0
end 最后一个元素(0=第一个元素,1=第二个元素) 否 Last element
step 每一次迭代的步长 否 1
var 代表当前条目的变量名称 否 无
varStatus 代表循环状态的变量名称 否 无
<c:forTokens>标签与<c:forEach>标签有相似的属性,不过<c:forTokens>还有另一个属性:
属性 描述 是否必要 默认值
delims 分隔符 是 无
<c:if>:相当于 if 判断
属性:test,用于定义条件表达式