3 jsp内置对象
1request对象
request 封装了用户提交的信息,对象调用相应的方法可以获取封装的信息,即使用该对象可以获取用户提交的信息。
request最常用的方法
getParameter(String s)获取客户提交信息 。
getProtocol() 获取客户向服务器提交信息所使用的通信协议,比如http/1.1等。
getServletPath() 获取客户请求的JSP 页面文件的目录。
getContentLength() 获取客户提交的整个信息的长度。
getMethod() 获取客户提交信息的方式,比如:post 或get.
getHeader(String s) 获取HTTP 头文件中由参数s指定的头名字的值,一般来说s参数可取的头名有:accept、 referer 、 accept-language 、content-type、accept-encoding、 user-agent 、host、 content-length 、 connection 、cookie 等,比如,s 取值user-agent将获取客户的浏览器的版本号等信息。
getHeaderNames() 获取头名字的一个枚举
getHeaders(String s) 获取头文件中指定头名字的全部值的一个枚举
getRemoteAddr() 获取客户的IP 地址。
getRemoteHost() 获取客户机的名称(如果获取不到,就获取IP 地址)。
getServerName() 获取服务器的名称。
getServerPort() 获取服务器的端口号。
getParameterNames() 获取客户提交的信息体部分中name 参数值的一个枚举。
2response对象
response 对象对客户的请求作出动态响应,向客户端发送数据。
setContentType(String s)方法来改变contentType的属性值
addHeader(String head,String value);或方法setHeader(String head ,String value)设置HTTP头信息
sendRedirect(URL url) 方法实现客户的重定向。
3session 对象
从一个user打开浏览器连接到服务器,到user关闭浏览器离开服务器称做一个会话。当一个客户访问服务器时,可能会在这个服务器的N个页面反复连接、反复刷新一个页面或不断地向一个页面提交信息等,服务器应当通过session(会话)对象知道这是同一个客户。
3.1session 对象的Id
客户首次访问服务器上的一个JSP 页面时,JSP 引擎产生一个secssion 对象,session 对象调用相应的方法可以存储客户在访问各个页面期间提交的各种信息,session 对象被分配了一个String 类型的Id 号,JSP 引擎同时将这个Id 号发送到客户端,存放在客户的Cookie 中。每个客户都对应着一个session 对象,,JSP 引擎为每个客户启动一个线程,当客户再访问连接该服务器的其它页面时,或从该服务器连接到其它服务器再回到该服务器时,JSP 引擎不再分配给客户的新session 对象,而是使用完全相同的一个,直到客户关闭浏览器后,服务器端该客户的session 对象被取消,和客户的会话对应关系消失。当客户重新打开浏览器再连接到该服务器时,服务器为该客户再创建一个新的session 对象。
3.2session 对象的常用方法:
public void setAttribute(String key ,Object obj)
session对象类似于散列表,session对象可以调用该方法将参数Object指定的对象obj添加到session 对象中,并为添加的对象指定了一个索引关键字,如果添加的两个对象的关键字相同,则先前添加的对象被清除。
(2) public Object getAttibue(String key)
获取session 对象含有的关键字是key 的对象。由于任何对象都可以添加到session 对象中,因此用该方法取回对象时,应强制转化为原来的类型。
(3) public Enumeration getAttributeName()
session对象调用该方法产生一个枚举对象,该枚举对象使用nextElemets()遍历session对象所含有的全部对象。
(4) public long getCreationTime()
session 对象调用该方法可以获取该对象创建的时间,单位是毫秒。
(5) public long getLastAccessedTime()
获取当前session 对象最后一次被操作的时间,单位是毫秒。
(6) public int getMaxInactiveIterval()
获取session 对象的生存时间。
(7) public void setMaxInactiveIterval(int n)
设置session 对象的生存时间(单位是秒)
(8) public void removeAttribue(String key)
从当前session 对象中删除关键字是key 的对象。
(9) public String getId()
获取session 对象的编号。
(10) invalidate
使得session失效
4application 对象
服务器启动后,产生application 对象。当一个客户访问服务器上的一个JSP 页面时,JSP引擎为该客户分配application 对象,当客户在所访问的网站的各个页面之间浏览时,application 对象都是同一个,直到服务器关闭,这个application 对象才被取消。与session 对象不同的是,所有客户的application 对象是相同的一个,即所有的客户共享这个内置的application 对象。
application 对象的常用方法
(1) public void setAttribute(String key ,Object obj)
application 对象可以调用该方法将参数Object 指定的对象 obj 添加到application对象中,并为添加的对象指定了一个索引关键字,如果添加的两个对象的关键字相同,则先前添加对象被清除。
(2) public Object getAttibue(String key)
获取application 对象含有的关键字是key 的对象。由于任何对象都可以添加到application对象中,因此用该方法取回对象时,应强制转化为原来的类型。
(3) public Enumeration getAttributeNames()
application 对象调用该方法产生一个枚举对象,该枚举对象使用nextElemets()遍历application对象所含有的全部对象。
(4) public void removeAttribue(String key)
从当前application 对象中删除关键字是key 的对象。
(5) public String getServletInfo()
获取Servlet 编译器的当前版本的信息。
5 out 对象
out 对象是一个输出流,用来向客户端输出数据。
out.print(Boolean),out.println(boolean) :用于输出一个布尔值。
out.print(char),out.println(char) :输出一个字符。
out.print(double),out.println(double) :输出一个双精度的浮点数。
out.print(fload),out.println(float) :用于输出一个单精度的浮点数。
out.print(long),out.println(long) :输出一个长整型数据。
out.print(String),out.println(String) :输出一个字符串对象的内容。
out.newLine() :输出一个换行符
out.flush() :输出缓冲区里的内容
out.close() :关闭流