二、JSP的3个编译指令,7个动作指令,9个内置对象

JSP 3个编译指令

1)  page指令(基本不需要用到,使用默认即可)

主要属性:

1.Language:指定脚本所采用的语言类型,现在只支持java

2.Extends:定义当前jsp产生的servlet是继承哪个类

3.Import:定义当前jsp使用的java API,多个API之间用逗号分开

4.Session:指定是否使用session,默认true

5.Buffer:指定输出流的缓存大小,默认8K

6.autoFlush:指定输出缓冲区是否自动清除,默认true

7.isThreadSafe:指定能否出来多个线程的同步请求

8.info:指定页面的相关信息

9.errorPage:指定当前页出错时转向的错误处理页面(提示友好信息)

格式:errorPage=“处理页面地址”

10.contentType:指定当前页面的mime类型的编码格式

Eg:contentType="text/html; charset=GB18030"

11.isErrorPage:指定当前页面是否为处理错误页面(true|false)

12.pageEncoding:指定页面编码的字符集,默认为ISO-8859-1,当页面中含有中文时应使用“gbk”或“gb18030”或“gb2312”。

Eg:pageEncoding="GB18030"

2)  include指令

<%@ include file=“URL”%>

3)  taglib指令

<%@ taglib prefix=“” uri=“”%>

说明:uri用于指定prefix定义的前缀所代表的标签库

Eg:<%@ taglib prefic=”s2”  uri=”/struts-tags”%>

JSP的7个动作指令

1)  jsp:include 指令

用于在请求处理阶段包含来自一个Servlet或jsp页面的响应。和编译指令中的include不同,include只能用于包含静态页面,而jsp:include指令则可以包含静态和动态页面。

格式:1.<jsp:include  page=”文件路径”/>  --------(静态页面)

2.<jsp:include  page=”文件路径”>   --------(动态页面)

<jsp:param  name=”参数名1”   value=”参数值1”/>

……

<jsp:param  name=”参数名n”   value=”参数值n”/>

</jsp:include>

2)  jsp:forword 指令

用于执行页面转向,将请求的处理转发到下一页面。

格式:1.<jsp:forword  page=”文件路径”/>  ------(跳向静态页面)

2.<jsp:forword  page=”文件路径”>   ------(跳向动态页面)

<jsp:param  name=”参数名1”  value=”参数值1”/>

…….

<jsp:param  name=”参数名n”  value=”参数值n”/>

</jsp:forword>

3)  jsp:useBean 指令

用来在jsp页面内创建一个JavaBean实例

格式:<jsp:useBean  id=”javaBean的名称”  scope=”有效范围”  class=”包名.类名”></jsp:useBean>

说明: id属性指定了javaBean的名称,只要是在他的有效范围内,均可以使用这个名称来调用他。Scope属性为javaBean的有效范围(四大范围:request、page、session、application),class属性指定了javaBean所属的类(包名.类名)。

4)  jsp:setProparty 指令

用来设置Bean对象的属性

格式:1.<jsp:setProparty  name=”javaBean名称”  proparty=”*” />

2.<jsp:setProparty  name=”javaBean名称”  proparty=”属性名” />

3. <jsp:setProparty  name=”javaBean名称”  proparty=”属性名”  param=”参数名” />

4. <jsp:setProparty  name=”javaBean名称”  proparty=”属性名”  value=”属性值” />

说明:proparty=”*”时,表示保存用户在jsp页面中输入的所有值,用于匹配javaBean的属性。当proparty有具体的值时,表示匹配Bean的一个属性。Param属性表示根据指定的request对象中的参数与属性匹配。Value属性表示使用指定的值来设置Bean的属性。

5)  jsp:getProparty 指令

用来读取Bean对象的属性,并将其转换为一个字符串显示在页面上。

格式:<jsp:getProparty  name=”bean的名称”  proparty=”属性名称”/>

6)  jsp:plugin 指令(不常用)

用于下载服务器端的javaBean或Applet到客户端执行。

7)  jsp:param 指令(不常用)

用于设置参数,不能单独使用,主要用在jsp:include   jsp:forword   jsp:plugin指令中。

JSP的9个内置对象

1)  request对象:用于获取客户端提交的数据,这些数据包括头信息、客户端地址、请求方式等。

常用方法

  1. getParameter(String name) 获取表单提交的数据
  2. getParameterName() 获取客户端提交的所有参数名
  3. getAttribute(String name) 获取name指定的属性
  4. getAttributeName() 获取request对象所有属性的名称集合
  5. getSession(Boolean create) 获取HttpSession对象
  6. getCookies() 获取Cookie对象
  7. getProtocol() 获取客户端协议名称
  8. getServletPath() 获取客户端请求的脚本的相对路径
  9. getMethod() 获取客户端提交数据的方式,如get 、post等
  10. getHeader() 获取文件头信息
  11. getRemoteAddr() 获取客户端IP地址
  12. getServerName() 获取服务器名称
  13. getRemoteHost() 获取客户端主机名
  14. getServerPort() 获取服务器端口号

2)  response对象:有用对客户端的请求作出动态的响应,向客户端发送数据。

常用方法

  1. getCharacterEncoding() 返回响应的字符编码格式
  2. getOutputStream() 返回响应的输出流
  3. getWriter() 返回可以向客户端输出字符的一个对象
  4. setContentLength(int long) 设置响应头的长度
  5. setContentType(String type) 设置响应的mime类型
  6. sendRedirect(String location) 重新定向客户端的请求
  7. flushBuffer() 强制把当前缓存区的数据发送到客户端
  8. addCookie(Cookie cookie) 在客户端添加一个cookie

3)  session对象:从一个客户打开浏览器并连接到服务器开始,到用户关闭浏览器离开这个服务器结束,整个阶段被称为一个会话。Session对象可以用来保存用户的会话信息和会话状态。

常用方法

  1. getId() 获取session的标识符
  2. setAttribute(String key,Object obj) 将一个对象(obj)添加到session中,并为它指定一个索引值
  3. getAttribute(String key) 获取session对象中含有指定关键字的对象
  4. isNew() 判断用户是否参与了会话
  5. invalidate() 使当前会话失效
  6. removeAttribute(String name) 删除一个指定session的值
  7. getCreationTime() 获取session对象创建的时间

4)  out对象:用来向客户端输出各种数据。

常用方法

  1. print()/println() 输出各种类型的数据
  2. clearBuffer() 清除缓冲区的数据,并将数据写入客户端
  3. clear() 清除缓冲区的当前内容,但不将数据写入客户端
  4. flush() 输出缓冲区中的数据
  5. newLine() 输出一个换行符
  6. close() 关闭输出流

5)  page对象:就是指当前jsp页面本身,类似于java中的this。

常用方法

1.  getClass() 获取page对象的类

2.  hashCode() 获取page对象的hash码

3.  equals(Object obj) 判断page对象是否与参数中的obj相等

4.  copy(Object obj) 把此page对象复制并指定的Object对象中

5.  clone() 克隆当前的page对象

6.  toString() 吧page对象转换成String类型的对象

6)  application对象:实习用户间的数据共享,可以存放全局变量。

常用方法

  1. setAttribute(String key, Object obj) 将对象obj添加到application对象中,并为其指定索引
  2. getAttribute(String name) 获取指定的属性
  3. getAttributeName() 获取一个包含所有可用属性名的枚举
  4. removeAttribute(String name) 删除一个指定的application对象
  5. getContext(String uripath) 获取指定WebApplication的application对象
  6. getResource(String path) 获取指定资源(文件及目录)的URL路径
  7. getResourceAsStream(String path) 获取指定资源的输入流
  8. getServlet(String name) 返回指定的Servlet
  9. log(String msg) 把指定消息写入Servlet的日志文件

7)  pageContext对象:用于管理对属于jsp中特殊可见部分中已经命名对象的访问。

常用方法

  1. setAttribute(String key,Object obj) 将对象obj添加到默认页面范围或特定范围之中,并指定索引
  2. getAttribute(String name[,int scope]) 获取一个已命名为name的对象的属性,可选参数scope表示在指定范围内
  3. removeAttribute(String name,[int scope]) 删除指定范围内的某个属性
  4. forword(String relativeUrlPath) 将当前页面重定向到其他页面
  5. include(String relativeUrlPath) 在当前位置包含另一个文件
  6. release() 释放pageContext对象所占用的资源
  7. getServletContext() 获取当前页的ServletContext对象
  8. getException() 获取当前页的Exception对象

8)  config对象:用来获取服务器初始化配置参数。

常用方法

  1. getServletContext() 获取当前的Servlet上下文
  2. getInitParameter(String name) 获取指定的初始参数值
  3. getInitParameter() 获取所有的初始参数值
  4. getServletName() 获取当前的Servlet名称

9)  exception对象:用于处理jsp页面中发生的错误和异常,可以帮助我们了解并处理页面中的错误信息。

常用方法

  1. getMessage() 获取当前的错误信息
  2. getLocalizedMessage() 获取本地化语言的异常错误
  3. printStackTrace() 输出一个错误或错误的堆栈跟踪
  4. fillInStackTrace() 重写异常的执行栈轨迹
  5. toString() 关于异常错误的简单信息描述
上一篇:android使用模拟机测试时,若要联网IP地址该怎么写?


下一篇:关于hexo博客自定义域名后gitment评论系统登陆出现redirect error返回主页的解决办法