论坛首页 入门技术论坛

JSP的内置对象及方法

浏览 2431 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-01-11   最后修改:2010-01-11

1,out:
out对象是JspWriter类的实例,是向客户端输出内容常用的对象;
JSP的输出流,,等同于表达式;

Java代码
  1. out.println("test");  
out.println("test");



2,request:
客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应.它是HttpServletRequest类的实例.
获取表单提交参数,在请求完成后,作用域结束,变量失效;

Java代码
  1. String userName = request.getParameter("userName");  
String userName = request.getParameter("userName");



获取表单多个参数,返回数组, 比如checkbox多选的参数;

Java代码
  1. String[] chooseOs=request.getParameterValues("os");  
String[] chooseOs=request.getParameterValues("os");



设置请求的编码;

Java代码
  1. request.setCharacterEncoding("UTF-8");  
request.setCharacterEncoding("UTF-8");



设置和访问共享属性;

Java代码
  1. request.setAttribute("error", "用户名不能为空.");//设置request属性   
  2. request.getAttribute("error");//得到request属性   
  3. request.removeAttribute("error");//移除request属性  
request.setAttribute("error", "用户名不能为空.");//设置request属性
request.getAttribute("error");//得到request属性
request.removeAttribute("error");//移除request属性



得到访问用户的ip地址:

Java代码
  1. request.getRemoteAddr();  
request.getRemoteAddr();



得到当前目录或者jsp文件等的绝对路径(返回页面部署的路径,参数同样可以查找文件的路径);

Java代码
  1. request.getRealPath("");//当前目录   
  2. request.getRealPath("a.jsp");//jsp文件  
request.getRealPath("");//当前目录
request.getRealPath("a.jsp");//jsp文件



3,response:
response对象包含了响应客户请求的有关信息.它是HttpServletResponse类的实例。
服务器传给浏览器的文本信息;

增加header属性,比如通知浏览器不要缓存这个响应(运行后可通过TCPTrace观察响应头部的变化);

Java代码
  1. response.addHeader("pragma", "no-cache");   
  2. response.addHeader("cache-control", "no-cache");   
  3. response.addHeader("expires", "0");  
response.addHeader("pragma", "no-cache");
response.addHeader("cache-control", "no-cache");
response.addHeader("expires", "0");



页面重定向(发送两次请求,返回两次响应);

Java代码
  1. response.sendRedirect("url地址");  
response.sendRedirect("url地址");



4,session:
session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止.它是HttpSession类的实例.
会话,session对象是每个访问用户专用的;

设置和访问共享属性;

Java代码
  1. session.getAttribute("bean");//得到session属性   
  2. session.setAttribute("bean",bean);//设置session属性   
  3. session.removeAttribute("bean");//移除session属性  
session.getAttribute("bean");//得到session属性
session.setAttribute("bean",bean);//设置session属性
session.removeAttribute("bean");//移除session属性



销毁session会话(键,值);

Java代码
  1. session.invalidate();  
session.invalidate();



5,pageContext:
pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说它可以访问到本页所在的SESSION,也可以取本页面所在的application的某一属性值,他相当于页面中所有功能的集大成者,它的本类名也叫pageContext;

页面转发请求(一次发送请求,返回一次响应,直接转发到该页面);

Java代码
  1. pageContext.forward("url地址");  
pageContext.forward("url地址");



6,application:
application对象实现了用户间数据的共享,可存放全局变量.它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问.服务器的启动和关闭决定了application对象的生命.它是ServletContext类的实例.
配置全局信息,得到相关数据.该对象保存了一个应用系统中一些公用的数据,与session对象相比,application对象是所有客户共享的;

得到servlet的版本号;

Java代码
  1. application.getMajorVersion()+"."+application.getMinorVersion();  
application.getMajorVersion()+"."+application.getMinorVersion();



可配置的全局信息(通过web.xml);

Java代码
  1. application.getInitParameter("company.name(<param-name>属性)");   
  2. //在web.xml中加入:   
  3.      <context-param>   
  4.          <param-name>company.name</param-name>   
  5.          <param-value>北京xxx信息技术有限公司</param-value>   
  6.      </context-param>  
application.getInitParameter("company.name(<param-name>属性)");
//在web.xml中加入:
 <context-param>
  <param-name>company.name</param-name>
  <param-value>北京xxx信息技术有限公司</param-value>
 </context-param>


Java代码
  1. .getMajorVersion();//得到servlet大版本号   
  2. .getMinorVersion();//得到servlet小版本号   
  3. .getServerInfo();//得到服务器信息   
  4. .setAttribute("","");//设置共享全局属性信息   
  5. .getAttribute("");//得到共享全局属性信息  
.getMajorVersion();//得到servlet大版本号
.getMinorVersion();//得到servlet小版本号
.getServerInfo();//得到服务器信息
.setAttribute("","");//设置共享全局属性信息
.getAttribute("");//得到共享全局属性信息



7,config:
config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象);

设置jsp页面的常量(通过web.xml);

Java代码
  1. config.getInitParameter("page.title(<param-name>属性)");   
  2. //在web.xml中加入:   
  3.      <servlet>   
  4.          <servlet-name>configServlet</servlet-name>   
  5.          <jsp-file>/config.demo.jsp</jsp-file>   
  6.          <init-param>   
  7.              <param-name>page.title</param-name>   
  8.              <param-value>config对象演示</param-value>   
  9.          </init-param>   
  10.      </servlet>   
  11.      <servlet-mapping>   
  12.          <servlet-name>configServlet</servlet-name>   
  13.          <url-pattern>/config.demo.jsp</url-pattern>   
  14.      </servlet-mapping>  
config.getInitParameter("page.title(<param-name>属性)");
//在web.xml中加入:
 <servlet>
  <servlet-name>configServlet</servlet-name>
  <jsp-file>/config.demo.jsp</jsp-file>
  <init-param>
   <param-name>page.title</param-name>
   <param-value>config对象演示</param-value>
  </init-param>
 </servlet>
 <servlet-mapping>
  <servlet-name>configServlet</servlet-name>
  <url-pattern>/config.demo.jsp</url-pattern>
 </servlet-mapping>



8,page:
page对象就是指向当前JSP页面本身,JSP页面的this指针,它是java.lang.Object类的实例;

9,exception:
JSP页面中的异常;
exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象.如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译.他实际上是java.lang.Throwable的对象.

论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics