[TOC]
# EL
## 问题01:表达式运算
```
${X}
${X+Y}
${X.y}
${X[1]}
${empty X }
```
## 问题02:显示隐式对象(上下文路径、请求参数)
```
${pageContext.request.contextPath}
```
```
${param.paramName}
```
## 问题03:显示作用域属性
```
${pageScope.X}
${requestScope.X}
${sessionScope.X}
${applicationScope.X}
```
## 问题04:显示cookie
```
${cookie.X.value}
```
# JSTL
## 问题05:如何使用?
```
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
```
### 不同版本的jar包
![](https://img.kancloud.cn/6c/8c/6c8c68be5f0aeb795f36652aa943db8f_185x77.png)
![](https://img.kancloud.cn/d8/80/d880413a4e81d194a3027561e3e37efe_297x91.png)
## 问题06:条件语句(显示用户名or登录?)
```
<c:if test="${empty list }">
<h2>还没有任何登记信息!</h2>
</c:if>
```
## 问题07:分支语句
```
<c:set var="score">85 </c:set>
<c:choose>
<c:when test="${score>=90}">优秀!</c:when>
<c:when test="${score>=70&&score<90}">良!</c:when>
<c:when test="${score>60&&score<70}">及格!</c:when>
<c:otherwise>对不起,您没有通过考试!</c:otherwise>
</c:choose>
```
## 问题08:循环语句
```
语法1:集合成员迭代
<c:forEach items ="data" [var ="name"] [varStatus ="statusName"]>
标签体
</c:forEach>
```
## 问题09:格式化
* [ ] 格式化数字
```
<fmt:formatNumber
value ="<string>"
type ="<string>"
pattern ="<string>"
currencyCode="<string>"
currencySymbol="<string>"
groupingUsed="<string>"
maxIntegerDigits="<string>"
minIntegerDigits="<string>"
maxFractionDigits="<string>"
minFractionDigits="<string>"
var="<string>"
scope="<string>"
/>
```
* [ ] 格式化日期
```
<fmt:formatDate pattern="yyyy-MM-dd"
value="${now}" />
```
注意:日期格式化的时候**年份和日期**是**小写**,**月份**是**大写**。
* [ ] 更多
[https://www.runoob.com/jsp/jsp-jstl.html](https://www.runoob.com/jsp/jsp-jstl.html)
## 问题10:自定义标签库
1. 将自定义库放在WEB-INF中
2. 在JSP页面引入自定义库
3. 使用
```
${cus:decoder("String","UTF-8")}
```
- 1课程概述
- 2环境配置
- 3MVC
- 3.1View
- 3.1.1前端基础
- 3.1.2JSP语法
- 3.1.3JSP内置对象1
- 3.1.4JSP内置对象2
- 3.2Bean
- 3.3Controller
- 3.3.1Servlet
- 3.3.2Filter
- 3.3.3Listener
- 3.4EL&JSTL
- 4三层架构
- 4.1数据库操作
- 4.1.1JDBC
- 4.1.2JDBC优化
- 4.2三层架构设计
- 4.3程序优化
- 4.3.1数据库连接优化
- 4.3.2数据库操作优化
- 4.4安全专题
- 4.4.1Ajax异步查询
- 4.4.2CAPTCHA
- 4.4.3MD5&SHA
- 4.4.4Cookie
- 4.4.5分页显示
- 4.4.6文件上传
- 4.4.7发送邮件
- 5企业级框架
- 5.0Maven
- 5.1MyBatis
- 5.2Spring
- 5.3SpringMVC
- 6实践项目
- 6.1实验1-用户登录(MVC)
- 6.2实验2-访问统计(Servlet高级)
- 6.3实验3-三层架构
- 6.4实验4-安全信息系统