jsp内部对象

1.内部对象
1.1  out(向客户端输出各种数据类型)
重要方法:
     out.print(类型)  或  out.println(类型):换行输出
     out.newLine():输出一个换行符号
     out.flush():输出缓冲区的数据
     out.close():关闭输出流
     out.clearBuffer():清除缓冲区里的数据,并把数据写到客户端
     out.clear():清除缓冲区里的数据,但不把数据写到客户端
     out.getBufferSize():获得缓冲区的大小,缓冲区的大小可用<%@page  buffer=”size”%>设置
     out.getRemaining():获得缓冲区没有使用的空间的大小
     out.isAutoFlush():返回布尔值,若auto  flush则返回true,否则返回false。是否auto  fush我们可用%@page  is  AutoFlush=”true/false”%来设置
注意:中文显示问题
     若是直接赋值的中文字符串,用<%@  page  contentType=”text/html;charset=gb2312”%>就可正常显示。但不能用getStr(String  name)函数或类似的函数转换内码,否则不能正常显示中文。
     若是request传过来的中文字符串,必须要用getStr(String  name)函数或类似的函数转换内码,否则不能正常显示中文。
如:String  aa=str;
byte[]  aa=aa.getBytes(“ISO8859-1”);
String  bb=new  String(aa);
     在不同平台、不同的服务器jsp中文问题的解决方法各不相同,可自行试验。
1.2  request(接受客户端输入的信息)
作用:主要用于接受客户端通过http协议连接传输到服务器端的数据。
方法:
     getCookies():返回客户端的cookie对象,结果是一个cookie数组
     getHeader(String  name):获得http协议定义的传送文件头信息,
如:request.getHeader(“User-agent”)返回客户端浏览器的版本号、类型
     getAttribute(String  name):返回name指定的属性值,若不存在指定的属性,就返回空值(null)。
     getattributeNames():返回request对象所有属性的名字,结果集是一个Enumeration(枚举)类的实例
     getHeaderNames():返回所有request  header的名字,结果集是一个Enumeration(枚举)类的实例
     getHeaders(String  name):返回指定名字的request  header的所有值,结果集是一个Enumeration(枚举)类的实例
     getMethod():获得客户端向服务器端传送数据的方法有GET、POST、PUT等类型
     getParameter(String  name):获得客户端传送给服务器端的参数值,该参数由name指定
     get  parameterNames():获得客户端传送给服务器端的所有的参数名,结果集是一个Enumeration(枚举)类的实例
     getParameterValues(String  name):获得指定参数所有值
     getQueryString()获得查询字符串,该串由客户端以GET方法向服务器端传送
     getRequestURI():获得发出请求字符串的客户端地址
     getServletPath():获得客户端所请求的脚本文件的文件路径
     setAttribute(String  name,Java.lang.Object  o):设定名字为name的request参数值,该值由Object类型的o指定
     getServerName():获得服务器的名字
     getServerPort():获得服务器的端口号
     getRemoteAddr():获得客户端的IP地址
     getRemoteHost():获得客户端电脑的名字,若失败,则返回客户端电脑的IP地址
     getProtocol():获取客户端向服务器端传送数据所依据的协议名称,如http/1.1
1.3  application(保存用户信息)
作用:一旦创建,除非服务器关闭,否则将一直保持下去
application.setAttribute(“name”,val)
request.setAttribute(“name”,val)
方法:
     getAttribute(String  name):返回由name指定名字的application对象属性的值,这是个Object对象
     getattributeNames():返回所有application对象属性的名字,结果集是一个Enumeration(枚举)类的实例
     getInitParameter(String  name):  返回application栽个属性的初始值,此属性由name指定
     getServerInfo():获得当前版本Servlet编译器的信息
     setAttribute(String  name,Object  object):用object来初始化某个属性,该属性由name指定
例:简单计数器(E:/app/java/tomcat322/webapps/myjsp/  count.jsp)
1.4  response(控制http连接)
作用:向客户端发送数据,如Cookie、HTTP文件关信息等。
方法:
     addCookie(Cookie  cookie):添加1个Cookie对象,用来保存客户端的用户信息。用request的getcookies()方法可获得这个Cookie
如:<%  Cookie  mycookie=new  Cookie(“uname”,”wsr”);
response.addCookie(mycookie);
Cookie  delmycookie=new  cookie(“mycookie”,null);
delmycookie  .setMaxAge(0);
delmycookie  .setPath(/”);
response.addCookie(delmycookie);
%>
     addHeader(String  name,String  value):添加HTTP文件头,该header将会传到客户端,若同名的header存在,原来的header会被覆盖
     containsHeader(String  name):判断指定名字的HTTP文件头是否存在并返回布尔值
     sendError(int  sc):向客户端发送错误信息,如:505:服务器内部错误;404:网页找不到错误
如:response.sendError(response.SC_NO_CONTENT);
     setHeader(String  name,String  value):设定指定名字的HTTP文件头的值,若该值存在,它将会被新值覆盖
如1:让网页每隔5秒刷新一次
<%  response.setHeader(“Refresh”,”5”);%>
      the  current  dateis:<%=new  Date()%>
如2:利用response对象设定HTTP头
<%  response.setContentType(“Application/pdf”);
response.setHeader(“content-disposition”,”attachment;filename=/”syntax.pdf/””);
%>
     sendRedirect(“http://www.foo.com/path/error.html”):重定向功能
1.5  exception(处理异常和错误)  
作用:处理JSP文件在执行时所有发生的错误和异常。有3个内建方法。
注意:必须在<%@  page  isErrorPage=”true”%>的情况下才可以使用Exception对象
     getMessage():返回错误信息
     printStackTrace():以标准错误的形式输出一个错误和错误的堆栈
     toString():以字符串的形式返回1个对异常的描述
1.6  session(保存用户信息)
作用:分别保存每一个用户的信息
session.putValue(“name”,val)
session.getValue(“name”)
注意session中保存和检索的信息不能是基本数据类型,而必须是JAVA的相应的Object对象。
方法:
     getAttribute(String  name):获得指定名字的属性,若该属性不存在,将返回null
     getattributeNames():返回session对象中存储的第一个属性对象,结果集是一个Enumeration类的实例
     getCreationTime():返回该session对象创建的时间,以毫秒计,从1970年1月1日起
     getId():每生成一个session对象,服务器都会给其一个不会重复的编号,此方法返回当前session的编号
     getLastAccessedTime():返回当前session对象最后1次被操作的时间,返回自1970年1月1日起至今的毫秒数
     getMaxInactiveInterval():获得session对象的生存时间
     removeAttribute(String  name):删除指定的属性(包括属性名、属性值)
     setAttribute(String  name,Java.lang.Object  value):设定指定名字的属性值,并将其存储在session对象中     

你可能感兴趣的:(jsp内部对象)