1.jsp
服务器端生成动态页面的技术规范
2.jsp组成
HTML+CSS+JS
<%java代码块%>
<%=jsp表达式%>
<%jsp声明%>
3.jsp如何执行?
a.jsp转成Java文件 (容器实现)
html+css+js 在service中通过out.write输出
<%%> 在servlet中原样照搬
<%=%> 在servlet中通过out.print输出
<%!% 定义了新的成员变量以及新的方法
b.容器负责servlet对象的创建,初始化,就绪,以及销毁的整个过程的调用
4.jsp指令
将jsp文件转成Java文件时做的一些额外的处理,比如:导包
<%@指令名 属性名=属性值%>
page:
pageEncoding 设置当前页的编码方法
contentType:模拟响应消息头
import:导包
session:true(缺省值)/false
isErrorPage:true/false(缺省值)
errorPage:指定一个错误页面
5.隐含对象
out request response session application
exception:只有当isErrorPage的属性值设置成true,容器才会创建该对象,默认情况下isErrorPage的值为false,可以通过getMessage方法获取异常描述信息
config:相当于servletConfig,获取jsp的初始化参数值
page:jsp实例
pageContext:页面上下文对象,每一个jsp页面都会有一个唯一的页面上下文对象,只能在当前页面使用,该对象会一致存在,除非jsp实例被销毁
jsp--》Java(servlet)
--》pageContext
作用1:绑定数据
pageContext.setAttribute(String name,Object obj);
pageContext.getAttribute(String name);
作用2:获取其他八个隐含对象
jsp隐含对象生命周期排序:由小到大
pageContext<request<session<application
6.注释符
<!-- 注释内容--> 页面不显示 底层运行
<%-- 注释内容--%> 页面不显示 底层也不运行
状态管理(cookie与session)
验证码、登录拦截(session) url重写 过滤器
监听器 servletContext 对象 上传文件 servlet线程安全问题 jsp总结