JSP的9个内置对象惯用法

时间:2023-01-31 20:51:51
1,out:  
out对象是JspWriter类的实例,是向客户端输出内容常用的对象; 
JSP的输出流,,等同于表达式; 
Java代码  JSP的9个内置对象惯用法
  1. out.println("test");  


2,request:  
客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应.它是HttpServletRequest类的实例. 
获取表单提交参数,在请求完成后,作用域结束,变量失效; 
Java代码  JSP的9个内置对象惯用法
  1. String userName = request.getParameter("userName");  


获取表单多个参数,返回数组, 比如checkbox多选的参数; 
Java代码  JSP的9个内置对象惯用法
  1. String[] chooseOs=request.getParameterValues("os");  


设置请求的编码; 
Java代码  JSP的9个内置对象惯用法
  1. request.setCharacterEncoding("UTF-8");  


设置和访问共享属性; 
Java代码  JSP的9个内置对象惯用法
  1. request.setAttribute("error""用户名不能为空.");//设置request属性  
  2. request.getAttribute("error");//得到request属性  
  3. request.removeAttribute("error");//移除request属性  


得到访问用户的ip地址: 
Java代码  JSP的9个内置对象惯用法
  1. request.getRemoteAddr();  


得到当前目录或者jsp文件等的绝对路径(返回页面部署的路径,参数同样可以查找文件的路径); 
Java代码  JSP的9个内置对象惯用法
  1. request.getRealPath("");//当前目录  
  2. request.getRealPath("a.jsp");//jsp文件  


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

增加header属性,比如通知浏览器不要缓存这个响应(运行后可通过TCPTrace观察响应头部的变化); 
Java代码  JSP的9个内置对象惯用法
  1. response.addHeader("pragma""no-cache");  
  2. response.addHeader("cache-control""no-cache");  
  3. response.addHeader("expires""0");  


页面重定向(发送两次请求,返回两次响应); 
Java代码  JSP的9个内置对象惯用法
  1. response.sendRedirect("url地址");  


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

设置和访问共享属性; 
Java代码  JSP的9个内置对象惯用法
  1. session.getAttribute("bean");//得到session属性  
  2. session.setAttribute("bean",bean);//设置session属性  
  3. session.removeAttribute("bean");//移除session属性  


销毁session会话(键,值); 
Java代码  JSP的9个内置对象惯用法
  1. session.invalidate();  


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

页面转发请求(一次发送请求,返回一次响应,直接转发到该页面); 
Java代码  JSP的9个内置对象惯用法
  1. pageContext.forward("url地址");  


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

得到servlet的版本号; 
Java代码  JSP的9个内置对象惯用法
  1. application.getMajorVersion()+"."+application.getMinorVersion();  


可配置的全局信息(通过web.xml); 
Java代码  JSP的9个内置对象惯用法
  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>  


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


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

设置jsp页面的常量(通过web.xml); 
Java代码  JSP的9个内置对象惯用法
  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>  


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

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