一,JSP的基本语法
- 指令
代表当前页面的属性设置
conentType:页面的内容的类型 text/html; charset=utf-8
import:导入要用到的包
import:导入要用到的包 - 静态代码
指的页面中的所有静态代码(html\css\js\图片) - 小脚本
小脚本就是在页面中的多段java代码。
<%
代码块
%> - 表达式
类似于输出语句,能够将内容输出到页面
<%=java代码%> - 声明
html注释:在客户端是能够被看到的<!-->
jsp注释:无法在客户端是能够被看到的<%-- --%>
二,jsp的运行机制
运行流程:
1. 在客户端第一次请求时,先对JSP进行翻译
2. 形成“JAVA”文件,之后会对java文件编译成为”.class“文件
3. 最后会执行。
4. JSP在第一次执行时,速度较慢,从第二 次开始,就会直接使用已经编译好的.class运行,所以性能能够提升。
5. 如果对JSP中的配置进行了修改,那么服务器一定要重启!
三,常见的问题
1. 404问题:
服务器未启动
页面名称输入错误
文件夹可能配置问题
将页面放置在了WEB-INF目录,该目录是一个系统的配置目录,所以不能够随意访问
web应用未部署
2. 500问题:
服务器中代码出错了,可以查看页面的错误信息结合idea中输出的信息判断错误点。
JSP的内置对象
JSP中一共包含9个内置对象,最大的特点就是能够 直接使用,而无需使用者手动实例化。实例化的过程被 web容器完成了。
- page(指向当前页面的一个内部对象) 代表当前页面的对象。
- pageContext(作用域范围)是四个作用域其中之一,作用范围只在当前的页面中。
- out 内容输出。
- config 做页面中对应Servlet的配置。
- exception 处理页面中的异常信息。
- request 该对象主要处理客户端的请求,代表一次请求。
- response
sendRedirect(String location) 重定向。可以通过浏览器,重定向到某个 位置(当前服务器、外部的站点资源)
setCharacterEncoding(String str) 设置响应的编码格式 - session 代表一次会话。包含以下常用方法:
setAttribute(String key,Object value)
getAtrribute(String key)
removeAttribute(String key)
invalidate()
setMaxInactiveInterval(int value)
getMaxInactiveInterval
getId - application
应用级范围对象。 能够实现用户的数据共享。通 常情况下,用于服务器的名称、logo等基本上一 成不变的情境下。
四,转发于重定向的区别。
转发:
URL地址是不变的。内部资源完成一个跳转过程
能够通过request实现带值跳转。
请求发起后,跳转到目标过程只发起一次请求
请求跳转速度又有是在站内,所以速度也比较快。
重定向:
URL地址会发生改变。由浏览器发起两次请求,第一次是请求的目标(30x),第二次会有浏览器跳转到目标页面,该过程是一个重定向的过程。
不能够通过request实现带值跳转。
由于两次跳转,所以速度相比较转发稍慢。