[TOC]
# JSP概述
## 问题01:JSP的特点
* 使用Java API、Servlet API
* 包含了Java代码的HTML(显示增强)
> 本质:能够编写HTML的Java类
> 思考:Java、Servlet、JSP、HTML的区别?
## 问题02:JSP的执行过程
![](https://img.kancloud.cn/e9/28/e92862d462737aeceb8c796edc6de97e_1208x715.png)
## 问题03:JSP的构成
![](https://img.kancloud.cn/b9/a1/b9a196449e654100a878a879af0c4d2f_960x699.png)
## 问题04:JSP页面程序
* 访问次数
![](https://img.kancloud.cn/19/f0/19f0e7b69b024a3609faf5e5fb41cb98_411x366.png)
* 九九乘法表
![](https://img.kancloud.cn/fa/b8/fab8fd5beaf6803a05d1b91bb8482e95_517x296.png)
# JSP的page指令
![](https://img.kancloud.cn/9d/b0/9db033ced3b06c812bf1b981620e5598_929x380.png)
## 问题05:页面支持中文
![](https://img.kancloud.cn/f5/1b/f51b3db3a7aaf30336e78981ab3a4389_871x493.png)
## 问题06:Java常见运行时异常
![](https://img.kancloud.cn/2a/eb/2aeb8929646231ad01e7540c16072de6_1247x599.png)
> java.lang.ArithmeticException: / by zero
> java.lang.ArrayIndexOutOfBoundsException
> java.lang.NullPointerException
> java.lang.NumberFormatException: For input string: "pzhu"
> java.lang.ClassCastException: java.lang.String cannot be cast to java.util.Date
![](https://img.kancloud.cn/37/8b/378b7eeda706fa4156092b3559d23cc3_507x178.png)
## 问题07:设置自定错误页面
![](https://img.kancloud.cn/a8/94/a894a38d766639c6a165c0901d6ea4e0_870x389.png)
* 如何显示自定义错误页面?
![](https://img.kancloud.cn/4f/3b/4f3b193d4c1d921d87940a219f32c3b4_767x360.png)
> 1. 在internet explorer的选项中关闭HTTP友好提示信息
![](https://img.kancloud.cn/40/4b/404bb36002331224152e65ce4d80e72c_490x334.png)
> 2. 增加错误页面信息至超过1024字节
> 3. 将错误信息页面状态码从500修改为200
```
response.setStatus(200);
```
## 问题08:设置全局错误页面
![](https://img.kancloud.cn/2a/12/2a1271ffd01de6985a0ea2d110d98c0c_995x255.png)
![](https://img.kancloud.cn/b1/e7/b1e7336fcd458ffcbb37e90403d995b5_880x363.png)
# JSP的include指令
## 问题09:包含header页面
![](https://img.kancloud.cn/19/c4/19c4e1626abe6d04e5232b639fce531c_930x572.png)
## 问题10:包含footer页面
![](https://img.kancloud.cn/15/9e/159e2190f12819f9d170dd40a55b86cf_709x220.png)
## 问题11: < jsp:include >和< %@include >的区别
![](https://img.kancloud.cn/6a/59/6a59181a1153751150cc4ecb97e12b46_519x460.png)
![](https://img.kancloud.cn/75/96/7596b19c85a071c13881c97dc0aff9f1_1175x440.png)
![](https://img.kancloud.cn/d5/5c/d55c4f5e7d1c517ef1e02e8f7b292cc9_682x160.png)
![](https://img.kancloud.cn/10/4f/104fbc20089a085821fc37878dd0e411_995x198.png)
### 扩展:其他动作元素
![](https://img.kancloud.cn/0c/39/0c39b9be171ec2ebc76c96ea70cdab25_971x212.png)
# JSP的taglib指令
## 问题12:使用EL/JSTL库
![](https://img.kancloud.cn/95/88/9588089787cc0a83629938cd0f03da45_832x150.png)
## 问题13:使用自定义库
![](https://img.kancloud.cn/eb/23/eb23bbe49e31d2729dee0bbcdeda7c3d_734x392.png)
- 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-安全信息系统