JSP-内置对象

Jsp翻译成servlet之后,有9个对象定义并且初始化完毕,可以直接使用这些对象

  • request 请求对象
  • response 响应对象
  • out 向客户端输出内容
  • session 会话信息
  • application 共享信息servletContext
  • pageContext
  • config 服务器配置可以获取初始化参数
  • page 转换servlet类的实例
  • exception 异常页面会有该对象

request

接受客户端提交的各种信息。

常用方法

  • getParameter(String name) 获取客户端传给服务器的参数值
  • getParameterNames() 获取客户端传给服务器的所有参数的名字,返回结果时一个枚举实例
  • getCookies()
  • getCharacterEncoding()
  • getMethod()
  • getRequestURL()
  • getRemoteAddr() 获取客户端的IP地址
  • getServerName() 获取服务器的名字
  • getServerPort() 获取服务器的端口号
  • getServletPath() 获取客户端请求脚本的路径
<%--客户使用的协议--%>
<h1><%= request.getProtocol()%></h1>

<%--客户端请求脚本的路径--%>
<h1><%= request.getServletPath()%></h1>

<%--提交信息的长度--%>
<h1><%= request.getContentLength()%></h1>

<%--提交信息的方式--%>
<h1><%= request.getMethod()%></h1>

<%--UserAgent头信息--%>
<h1><%= request.getHeader("User-Agent")%></h1>

<%--Host头信息--%>
<h1><%= request.getHeader("Host")%></h1>

<%--Ip地址--%>
<h1><%= request.getRemoteAddr()%></h1>

<%--客户机名称--%>
<h1><%= request.getRemoteHost()%></h1>

<%--服务器名称--%>
<h1><%= request.getServerName()%></h1>
<%--服务器端口号--%>
<h1><%= request.getServerPort()%></h1>

response

对客户请求做出响应。 向客户端发送数据

常用方法

  • addCookie(Cookie cookie) 添加一个Cookie对象,保存客户端信息
  • addHeader(String name,String value) 添加HTTP头信息
  • constrainsHeader(String name) 判断名称头是否已经存在
  • flushBuffer() 强制吧缓冲区内容发送客户端
  • getBufferSize() 获取缓冲区大小
  • setHeader()
  • setRedirect(String url) 把响应发送到另一个位置进行处理
<%--自动跳转连接--%>
<%
    response.setHeader("refresh","3;URL=http://www.baidu.com");
%>
// 禁用页面缓存
<%
    response.setHeader("Cache-Control","no-cache");
    response.setHeader("Pragma","no-cache");
    response.setHeader("Expires","0");
%>

page

page对象表示当前一个JSP页面,可以理解为一个对象本身,即:把一个JSP当作一个对象来看待。

out

 out对象用于向客户端发送文本数据

out对象的类型JspWriter,这是一个带有缓存功能的PrintWriter。默认8Kb,如果设置为0代表关闭out缓冲区直接写道response缓冲区。设置JSP页面的page指令的buffer属性可以调整它的缓存大小,甚至关闭它的缓存

常用方法

  • clear() 清除缓冲区数据
  • clearBuffer() 清除缓冲区并向用户输出
  • close() 关闭输出流
  • flush() 输出缓冲区的内容
  • isAutoFlush() 是否为自动刷新
  • print(String str)

    PageContext

通过pageContext获得其他对象

  • getException方法返回exception隐式对象
  • getPage方法返回page隐式对象
  • getRequest方法返回request隐式对象
  • getResponse方法返回response隐式对象
  • getServletConfig方法返回config隐式对象
  • getServletContext方法返回application隐式对象
  • getSession方法返回session隐式对象
  • getOut方法返回out隐式对象

作为域对象

  • setAttribute()
  • getAttribute()
  • removeAttribute()
  • findAttribute()

Session

Session是指客户端与服务器的一次会话,从客户端连到服务器开始到客户端与服务器断开连接

  • getAttribute(String name)
  • getAttributeNames()
  • removeAttribute(String name)
  • setAttribute(String name, String value)
  • getCreationTimes() 返回创建session的时间
  • getId() 返回唯一标识符的Id
  • getLastAccessedTime() 返回该session相关的客户端最后发送请求的时间
<%--Session创建时间--%>
<h1><%= session.getCreationTime()%></h1>

<%--创建Session的ID--%>
<h1><%= session.getId()%></h1>

<%--最近一次的请求时间--%>
<h1><%= session.getLastAccessedTime()%></h1>

<%--取消Session使Session不可用--%>
<%--<h1><%= session.invalidate()%></h1>--%>

<%--查看Session是否存在--%>
<h1><%= session.isNew()%></h1>

<%--设置两次请求间隔多长时间--%>
<h1><% session.setMaxInactiveInterval(6000);%></h1>

Application

实现了用户间的数据共享问题,可存放全局变量。开始与服务器的启动直到服务器的关闭。

  • Object getAttribute(String name) 返回给定名的属性值
  • Enumeration getAttributeNames() 返回所有可用属性名的枚举
  • void setAttribute(String name,Object obj) 设定属性的属性值
  • void removeAttribute(String name) 删除一属性及其属性值
  • String getServerInfo() 返回JSP(Servlet)引擎名及版本号
  • String getRealPath(String path) 返回一虚拟路径的真实路径
  • ServletContext getContext(String uripath) 返回指定WebApplication的application对象
  • int getMajorVersion() 返回服务器支持的Servlet API的最大版本号
  • int getMinorVersion() 返回服务器支持的Servlet API的最大版本号
  • String getMimeType(String file) 返回指定文件的MIME类型
  • URL getResource(String path) 返回指定资源(文件及目录)的URL路径
  • InputStream getResourceAsStream(String path) 返回指定资源的输入流
  • RequestDispatcher getRequestDispatcher(String uripath) 返回指定资源的RequestDispatcher对象
  • Servlet getServlet(String name) 返回指定名的Servlet
  • Enumeration getServlets() 返回所有Servlet的枚举
  • Enumeration getServletNames() 返回所有Servlet名的枚举
  • void log(String msg) 把指定消息写入Servlet的日志文件
  • void log(Exception exception,String msg) 把指定异常的栈轨迹及错误消息写入Servlet日志文件
  • void log(String msg,Throwable throwable) 把栈轨迹及Throwable异常信息写入Servlet日志文件

  转载请注明: linis JSP-内置对象

 上一篇
Hibernate-配置 Hibernate-配置
什么是持久化技术 持久化技术。就是把数据保存到可永久保存的存储设备中。持久化的主要应用是将内存中的对象存储在关系型数据库中。 什么是ORM 对象关系映射。 通过ORM我们可以通过类的方式去操作数据库,而不用原生的SQL语句。通过把表
2019-04-23
下一篇 
JSP-基础 JSP-基础
JSPJava Server Pages 是什么 JSP是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码,其根本是一个简化的servlet设计 为什么 JSP页面可以与处理业务逻辑的Servlet一起使用 工作原理
2019-04-22
  目录