jsp指令表
属 性 | 描 述 | 默 认 值 | 例 子 |
language | 定义要使用的脚本语言,目前只能是"java" | "java" | language="java" |
import | 和一般的Java import意义一样,只 能是","隔开包或者类列表 | 默认忽略(即不引入其 它类或者包) | import="java.io.*, java.util.Hashtable, javax.servlet.jsp.*, javax.servlet.http.* |
session | 指定一个Http会话中这个页面是否参与 | true | session="true" |
buffer | 指定到客户端输出流的缓冲模式,如果是none,则不缓冲,如果指定一数值,那么输出就用不小于这个值的缓冲区进行缓冲 | 不小于8kb,根据不同 的服务器可设置 | buffer="64kb" |
autoFlush | true缓冲区满时,到达客户端输出被刷新;false缓冲区满时,出现运行异常,表示缓冲溢出 | true | autoFlush="true" |
info | 关于jsp页面的信息,定义一个字符串,可以使用servlet.getServletInfo()获得 | 默认忽略 | info="一个测试页面" |
isErrorPage | 表示当前页面是否为其它页面的errorPage目标.如果被设置为true,则可以使用exception对象。相反,如果设置为false,则不可以使用exception对象 | flase | isErrorPage="false" |
errorPage | 定义此页面出现异常时调用的页面 | 默认忽略 | errorPage="error.jsp" |
isThreadSafe | 用来设置jsp文件是否能多线程使用。如果设置为true,那么一个jsp能够同时处理多个用户的请求;相反,如果设置为false,一个jsp页面只能处理一个请求 | true | isThreadSafe="true" |
contentType | 定义jsp字符编码和页面相应的MiME类型。TYPE=MIMETYPE;charset=CHARSET | text/html;charset=iso-8859-1 | contentType="text/html ;charset=gb2312" |
pageEncoding | jsp页面的字符编码 | pageEncoding="ISO-8859-1" | pageEncoding="gb2312" |
isELIgnored | 制定EL(表达式语言)是否被忽略,如果为true,则容器忽略"${}"表达式的计算 | 默认值有web.xml描述文件的版本确定,Servlet2.3以前的版本将忽略 | isELIgnored="true" |
jsp内置对象
对象名 | 对 象 说 明 |
page | jsp网页本身 |
request | 获得客户端的请求,包括从get/post请求传递过来的参数 |
session | 与请求相关的会话 |
application | 脚本程序的运行环境 |
pegeContext | 管理网页属性 |
out | 传送相应的输出流 |
config | 脚本程序配置对象 |
response | 网页传回客户端的反应 |
exception | 处理异常和错误 |
jsp的四种取值范围
对象名 | 对 象 说 明 |
page | 设置到page对象里面的属性值,有效范围只在该jsp页面本身,通过客户端跳转,或服务器端跳转都会是设置到page对象里面的属性值失效 |
request | 设置到request对象里面的属性值,有效范围除了在该jsp页面本身外,还可以通过在一次服务器跳转获得request对象里面的属性值,即在浏览器地址栏不变的情况下,通过第二次服务器跳转能使设置到request对象里面的属性失效 |
session | 设置到session对象里面的属性值,只在一次会话范围内有效,即在一次浏览器为关闭的状态下,通过任何跳转session都有效,当打开第二个浏览器时,session失效 |
application | 设置到application对象里面的属性值,在一次应用服务器范围内有效,即在一次为关闭得到服务器范围内,可以通过任何跳转,打开若干个浏览器窗口来访问设置到该application对象里面的属性值 |
jsp标签
jsp 标 签 名 | 标 签 的 使 用 |
<jsp:useBean id="userInfo" class="user.User" scope="page"/> | 该标签作用是实例化一个javaBean对象,id代表被实例化的一个javaBean对象的名字,class代表该javaBean的类型,即所在的具体位置,scope代表被实例化的这个javaBean对象的作用域 |
<jsp:setProperty property="userName" name="userInfo" param="user"/> | 该标签的作用有二:1.从客户提交过来的表单中获取请求内容;2.再把请求内容设置到javaBean当中去;property代表javaBean中的属性名,name代表被实例化的javaBean对象,param代表request中的参数名.该标签还可以写成<jsp:setProperty property="*" name="userInfo"/>javaBean对象自动把request中的所有参数设置到javaBean中去 |
<jsp:getProperty property="password" name="userInfo"/> | 该标签的的作用是输出javaBean中的某个属性的值在jsp页面上,property指代javaBean中的某个属性,name代表应用的javaBean对象 |
<jsp:include page="index3.jsp"> <jsp:param name="pass" value="123"/> </jsp:include> | 该标签的作用用于包含某个页面,被包含的页面可以使静态,还可以是动态page代表被包含的页面文件名,<jsp:param name="pass" value="123"/>的作用是向被包含的页面的传递参数name参数名字,value代表参数的值 |
<jsp:forward page="index3.jsp"> <jsp:param name="password" value="123"/> </jsp:forward> | 该标签的作用是向某个动态页面进行服务器跳转,page指向被跳转的页面,<jsp:param name="pass" value="123"/>的作用是向跳转的页面传递参数name是参数名,value是参数值 |
jsp两种包含的区别
jsp 两 种 包 含 | 这 两 种 包 含 的 区 别 |
1.include指令 <%@ include file="" %> | 这种包含是一个静态的包含,可以包含jsp文件,html文件,文本文件等。特点:先把文件包含进来,再一块执行----即先包含,再执行 |
2.<jsp:include page="index3.jsp"> <jsp:param name="pass" value="123"/> </jsp:include> | 这种包含既可以包含静态页面,还可以包含动态页面,并且还可以向被包含的页面传递参数,和中包含的特点:先将被包含的页面代码执行,再把它包含进来,即先执行,再包含 |
jsp中两种跳转的区别
jsp 两 种 跳 转 | 这 两 种 跳 转 的 区 别 |
1.response. sendRedirect(""); | 这是一种客户端跳转,跳转时浏览器地址栏内容会改变 |
2.<jsp:forward page="index3.jsp"> <jsp:param name="password" value="123"/> </jsp:forward> | 这是服务器跳转,跳转时浏览器地址栏内容不会改变的,还可以向被跳转的页面传递参数 |