JSP8
一.EL表达式
JSP表达式语言(EL)使得访问存储在JavaBean中的数据变得非常简单。JSP EL既可以用来创建算术表达式也可以用来创建逻辑表达式。在JSP EL表达式内可以使用整型数,浮点数,字符串,常量true、false,还有null
EL中的基础操作符
1.${表达式} (这个是可以运算的,在jsp中就可以省去<% %>,无java代码)
${100+100}<br>
2=2${2==2}<br>
4>3${4>3 }<br>
<%
String s=null;
%>
empty${empty s }<br>
4>3${4 gt 3 }<br>
4>3 and 4>2${4 gt 3 && 4 gt 2 }
JSP EL隐含对象
2.使用el表达式取表单数据
${param.num} 取单个数据
<br/>
${paramValues.data[0]}
${paramValues.data[1]}<br/>
取多个值
3.使用el表达式取对象与对象中的属性
${stu} 取对象
${stu.name} 对象中的属性
<br/>
${stu.age }对象中的属性
<br/>
${stu["name"]}对象中的属性
${stu["age"]}对象中的属性
<br/>
二.Jstl表达式
JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。
JSTL支持通用的、结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签。 除了这些,它还提供了一个框架来使用集成JSTL的自定义标签。
根据JSTL标签所提供的功能,可以将其分为5个类别。
- 核心标签
- 格式化标签
- JSTL 函数
- SQL 标签
- XML 标签
核心标签
1. 引用核心标签库的语法如下:
使用jstl标签库,要在jsp头部添加
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

用法如下:
<c:set var= "example" value="${100+1}" scope="session" /> 定义变量
<c:out value="${example}"/> 输出变量
<c:remove var= "example" scope="session"/> 删除变量
<br/>
<c:out value="${example}"/>
2.条件:
单条件:
<c:set var= "example" value="${100+1}" scope="session" />
<c:if test="${example>100}">
<c:out value="${example}"/>
</c:if>
两个条件:
<c:set var= "example" value="${100-1}" scope="session" />
<c:choose>
<c:when test="${example>100 }">
example>100
</c:when>
<c:otherwise>
exmaple<=100
</c:otherwise>
</c:choose>
多个条件:
<c:set var= "example" value="${1000}" scope="session" />
<c:choose>
<c:when test="${example>100 }">
example>100
</c:when>
<c:when test="${example==100 }">
example=100
</c:when>
<c:otherwise>
exmaple<100
</c:otherwise>
</c:choose>
3.循环:
<c:set var="nums" value="1,2,3,4" scope="request"/>
<c:forEach items="${nums}" var="item">
${item}<br/>
</c:forEach>
4.Javabean对象与El表达式与jstl标签库的综合使用:
<c:forEach items="${requestScope.lists}" var="product" varStatus="status">
<!-- 如果是偶数行,为该行换背景颜色 -->
<tr <c:if test="${status.index % 2 == 1 }"> style=""</c:if>
>
<td>
${status.index }
</td>
<!-- 商品名称 -->
<td>
${product.name }
</td>
<!-- 产地 -->
<td>
${product.area }
</td>
<!-- 价格 -->
<td>
${product.price }
</td>
</tr>
</c:forEach>
格式化标签
JSTL格式化标签用来格式化并输出文本、日期、时间、数字。引用格式化标签库的语法如下:
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

JSTL函数
JSTL包含一系列标准函数,大部分是通用的字符串处理函数。引用JSTL函数库的语法如下:
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

JSP8的更多相关文章
- Auty自动化测试框架第六篇——垃圾代码回收、添加suite支持
[本文出自天外归云的博客园] 垃圾代码回收 添加脚本恢复机制,因为框架会自动生成一些代码,如果代码生成后出现问题导致代码没有正常删除掉,则会造成代码垃圾,在auty目录添加recovery.py文件: ...
随机推荐
- 更新Android Studio 3.0碰到的问题
更新完后试下运行正在维护的旧项目,出现各种错误,因为后来发现问题不在这,所以没记完整,大概如下: A larger heap for the Gradle daemon is recommended ...
- 最新数据库排行,Oracle略显疲惫
9月份TOPDB Top Database Index排行榜出炉,TOPDB Top Database Index是根据数据库在谷歌上的搜索频率分析得出的,数据库被搜索的频率越大,表示数 9月份的TO ...
- Andrew 机器学习课程笔记
Andrew 机器学习课程笔记 完成 Andrew 的课程结束至今已有一段时间,课程介绍深入浅出,很好的解释了模型的基本原理以及应用.在我看来这是个很好的入门视频,他老人家现在又出了一门 deep l ...
- C# Post和Get请求
Get请求: /// <summary> /// 调用ToxyzAPI /// </summary> /// <param name="requetid&quo ...
- AJAX 笔记
一.什么是 AJAX ? AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 是一种用于创建快速动态网页的技术. 通过 ...
- Python爬虫入门:URLError异常处理
大家好,本节在这里主要说的是URLError还有HTTPError,以及对它们的一些处理. 1.URLError 首先解释下URLError可能产生的原因: 网络无连接,即本机无法上网 连接不到特定的 ...
- An explicit value for the identity column in table can only be specified when a column list is used and IDENTITY_INSERT is ON
If you run into the following error message: An explicit value for the identity column in table '< ...
- 我眼中的WebViewJavascriptBridge
周六阳光明媚的早晨,非常适合整理和分享一些以前玩过的东西.曾经的工作中参与过一段时间iOS开发,在开发中有个小小的框架让我非常深刻,就是WebViewJavascriptBridge,用于原生控件与前 ...
- Asp.Net MVC 使用 Ajax
Asp.Net MVC 使用 Ajax Ajax 简单来说Ajax是一个无需重新加载整个网页的情况下,可以更新局部页面或数据的技术(异步的发送接收数据,不会干扰当前页面). Ajax工作原理 Ajax ...
- meta 是什么??
META http-equiv 大全HTTP-EQUIV类似于HTTP的头部协议,它回应给浏览器一些有用的信息,以帮助正确和精确地显示网页内容.常用的HTTP-EQUIV类型有: 1.Content- ...