三大指令:include、 page、taglib
include指令:
浸染: 在当前页面用于包含其他页面
语法: <%@include file=\"大众xxx.jsp\"大众%>
把稳:
1)事理是把被包含的页面(xxx.jsp)的内容翻译到包含页面中,合并成翻译成一 个java源文件,再编译运行,这种包含叫静态包含(源码包含)
2)如果利用静态包含,被包含页面中不须要涌现全局的html标签了!
!
!
(如html、head、 body 当然涌现也不会报错)
page指令:
浸染: 见告tomcat做事器如何把jsp文件翻译成java文件
默认写法:<%@ page language=\公众java\"大众 import=\"大众java.util.\公众 pageEncoding=\"大众ISO-8859-1\"大众%>
属性先容:
language=\"大众java\"大众 //见告做事器利用什么动态措辞来翻译jsp文件
import=\"大众java.util.\公众 //见告做事器java文件利用什么包导入包,多个包之间用逗号分割
pageEncoding=\公众utf-8\公众 //见告做事器利用什么编码翻译jsp文件(成java文件)
把稳:在开拓工具中,往后只须要设置pageEncoding即可办理中文乱码问题,由于contentType属性会默认设置和pageEncoding同等
contentType=\"大众text/html; charset=utf-8\"大众 //做事器发送浏览器的数据类型和内容编码
errorPage=\公众error.jsp\"大众 //配置了之后,当页面运行出错后,会跳转到对应的缺点页面
isErrorPage=\"大众false\"大众 //默认为false,当设为true后,可以利用内置工具exception,否则不能利用
buffer=\"大众8kb\"大众 //out内置工具的款存大小,当超过款存后,立马向浏览器中写出内容
session=\"大众true\公众 //是否可以利用内置工具session,默认true
isELIgnored=\公众false\"大众 //是否忽略EL表达式,默认false
taglib指令:
浸染:用于导入jstl标签库
9个内置工具
内置工具对应的类型阐明requestHttpServletRequest responseHttpServletResponse configServletConfig applicationServletContext sessionHttpSession exceptionThrowable pageObject(this)当前页面编译后的classoutJspWriter pageContextPageContext pageContext工具:pageContext工具的类型是PageContext,叫jsp的高下文工具
1)可以获取其他八个内置工具
如:
1 HttpServletRequest request= pageContext.getRequest; //等价于request内置工具\r2 HttpServletResponse response = pageContext.getResponse; ////等价于response内置工具\r3 HttpSessionsession = pageContext.getSession; //... 4JspWriterout = pageContext.getOut; //... 5 6 ...
2)本身是一个域工具
#四个域工具
ServletContextcontext域HttpServletRequetsession域HttpSessionrequest域PageContextpage域浸染: 保存数据和获取数据,用于共享数据#保存数据
1)默认情形下,保存到page域
pageContext.setAttribute(\公众name\"大众);
2)可以向四个域工具保存数据
pageContext.setAttribute(\公众name\"大众,域范围常量)
#获取数据
1)默认情形下,从page域获取
pageContext.getAttribute(\"大众name\公众)
2)可以从四个域中获取数据
pageContext.getAttribute(\"大众name\"大众,域范围常量)
#域范围常量:
PageContext.PAGE_SCOPE
PageContext.REQUEST_SCOPE
PageContext..SESSION_SCOPE
PageContext.APPLICATION_SCOPE
3)自动在四个域中搜索数据
pageContext.findAttribute(\"大众name\公众); //搜索顺序: page域 -> request域 -> session域- > context域(application域)