8.21
<%%>jsp代码片段
<%!-- --%>jsp注释
<%=%>jsp表达式
<%@%>
jsp指令:
page-import导包
page-session (true、false)
page-errorPage错误页面地址 (web.xml配置文件<error-page><error-code></error-code><location></location></error-page>)
page-isErrorPage是否是错误页面<%exception.getMessage()%>
注:当error-page和500冲突时,标签优先
pageEncoding(2、3、4):
contentType(3、4)
jsp->jsp servlet->输出结果:
1.乱码(jsp文件
2.jsp翻译成jspservlet
3.servlet接收编码
4.servlet输出编码)
include指令: 静态包含,不用写buffer=0kb(等同于 request.getRequestDispatcher("文件路径").include();不设置缓冲)
缓冲流:buffer大小影响流是否缓冲
taglib:导包
- jsp的九隐式对象
java对象 | jsp隐式对象 |
---|---|
servlet | pageContext |
request | request |
response | response |
servletConfig | config |
servletContext | application |
session | session |
out | |
execption |
注:out和writer(writer优先级大于out,但具体问题具体分析)
- session钝化:将session的数据序列化并保存到硬盘上;
session活化:将硬盘上的session数据加载到内存中;
pageContext:代表当前页面,本身就是域对象(域对象:request,session,pageContext,ServletContext);
servletContext>session>request>pageContext
可以用它获取其他八大对象。(生命周期:访问页面开始到页面结束;作用范围:当前界面;功能:获取其他八大对象;)
注:pageContext.set/getAttribute(name,value,scope);
pageContextfindAttribute(name);范围从小到大查,注意session。
便捷转发:pageaContext.forward(路径);pageContext.include(路径);域:是域对象中封装的map对象
域对象:
EL表达式:
注:el只能获取值,不能设置值;el不能遍历集合;
1.设置<%@page isELIgnored=”false”%>
2.基本格式: 变量名称是map中的key,作用域都存在时(从最小的找,原因:掉用的findAttribute(key)找不到输出”“)3.获取数组: {array[index]}
获取list list[index]获取map {map.key名}或 map[“key”]4.获取javabean中的属性:(注:javabean不是一种技术,用来表达实体和信息的一套规范–无参构造函数、getXXX()、setXXX()、布尔用get/set/isXXX) {user.name}
5.执行运算:+号是个运算符,不会 是连接符