#jsp的三大指令
1. page --------> <% @page language=“java” info=“xxx” … %>
2. include
3. taglib
-
page指令
- 一个页面可以有个N个指令 , 位置无所谓
pageEncoding 和 contextType
: pageEncoding 指定当前jsp页面的编码 ,- 在服务器要把jsp编译成 .java文件时需要使用pageEncoding
- contextType : 便是添加一个响应头 。 Content_type! 等同于response.setContentType(“text/html;charset=utf-8”)
- 若两个属性都未设置, (为iso)
- import(导包) , 可以出现多次
例 : <% @page language=“java” import=“java.untio.,java.net.” %>
- errorpage : 当前页面如果抛出 异常 , 那么就转发到指定页面中。
例 : <% @page language=“java” import=“java.untio.,java.net.” errorpage=“a.jsp” %>
- isErrorPage : 表示当前页面时处理错误的页面 , 当该属性为true , 页面设置码500 ,可以使用9大内置对象的exeption (别的对象不能用)
<% @page language=“java” import=“java.untio.,java.net.” pageEncoding=“UTF-8” iserrorpage = “true” %>
exeption.printf()- web.xml配置
<error-page> <error-code>404</error-code> <location>/error404.jsp</location> </error-page> <errorpage-pag> <error-code>500</error-code> <location>/error500.jsp</location> </error-page> <errorpage-pag> <exception-type>java.lang.RuntimeException</error-code> <location>/error.jsp</location> </error-page>
<error-page>的两个子元素 * <error-code> <exception-type>
-
atoFlush和buffer
- autoFlush: 指定jsp的输入流缓存区的满时 , 是否自动刷新,(true , false(满了会抛异常))
- buffer : 指定缓存区的大小(默认8k)
-
idELIfnored : 是否忽略el 表达式, 默认false
-
基本没有
-
language : 指定档期那jsp编译后的语言类型 , 默认java
-
info : 信息
-
isThreadSafe : 当前的jsp是否支持并发
-
session: 当前页面是否支持session , 如果false , 当前页面没有session这个内置对象
-
extends : 让jsp页面继承
-
-
include 静态包含
- 与RequestDispatchar的include()方法的功能类似
- <% include%> 他是jsp编译成java文件时完成 , 共同生成一个java ( 一个Servlet)文件,在生成一个Class文件
- 把页面分解,组合 。 将页面中不变的页面独写 ,(省时,简便,可重用)
<% String pagepath = "log.jsp" %> <% include file="<%=pagepath % >" %>// 错误写法,在程序编译时才能知道pagepath 是log.jsp
-
taglib -----------------> 导入标签库
-
两个属性
-
prefix : 指定标签库在本周页面的前缀, 自己命名
-
url :指定标签库的位置
<% @taglib prefix=“s'” , url="/struts-tags" %><s:text>
-
-
-
九大内置对象
-
out(jspWriter): 等同于response.getWriter() , 向客户端发送文本数据
-
config(ServletConfig): 对应
ServletConfig
-
page :(当前jsp的真身类型) 当前jsp页面的
this
, 即当前对象 -
pageContext (PageContext) : 页面的上下文 , (这个域时当前jsp页面和当前jspy页面中使用标签之间共享数据(内置空间))
域对象:
代理其他域:
全域查找: pageContext.findAttribute(“xx”);(以域的优先级开始查找)
获取其他八个域内置对象;
-
exception ( Throwable): 只有在错误页面中才能使用
-
request (HttpServletRequest) : HttpServletResponse 的对象
-
reponse (HttpServletResponse) : HttpServletResponse的对象
-
application (ServletContext) : ServletContext 类的内置对象
-
session (HttpSession) : 即HttpSession类的对象 , 若jsp页面设置<% page session= false%> ,则页面不能使用session
- config , page , exception 基本不用
- 不是每个页面都能使用 : exception , session .
-