Jsp提供了request、response、session、application、out、page、config、exception、pageContext9个内置对象。1.    Request
Request对象封装了由客户端生成的http请求的所有细节,主要包括http头信息、请求方式和请求参数等,通过该对象提供的相应方法可以获取客户端请求中的信息。
Request.getParameter(String arg0)方法的使用。
请求login.jsp页面。
<div>
<Form action="login.jsp" method="post">
<ul><li><h3>用户登录</h3></li></ul>
<ul><li>用户名:<input type="text" name="username"></li></ul>
<ul><li>密    码:<input type="password" name="pwd"></li></ul>
<ul><li><input type="submit" value="登录"></li></ul>
</Form>
</div>
login.jsp页面
<%
//获得用户名
String name=request.getParameter("username");
String pwd=request.getParameter("pwd");
if("guoyanan".equals(name) && "123".equals(pwd)){out.print("<h1>登录成功</h1>");
}else{out.print("<h1>登录失败</h1>");
}
%>处理获取请求参数时的乱码。
String user=new String(Request.getParameter(String arg0).getBytes(“iso-8851-1”),”UTF-8”);
处理提交信息时乱码。
Request.setCharacterEncoding(“UTF-8”);
Request对象获取客户端信息的常用方法
方法    说明
getHeader(String name)    获取http协议定义的文件头信息
getHeaders(String name)    返回指定名称的request Header的所有值,结果是一个枚举的实例。
getHeadersNames()    返回所有request Header的名称,结构是一个枚举型的实例。
getMethod()    获得客户端向服务器传送的数据方式:get、post、header、trace等。
getProtocol()    获得客户端向服务器传送数据所依据的协议名称。
getRequestURL()    获取发出请求字符串的客户端地址,不包括请求的参数
getRealPath()    返回请求文件的绝对路径
getRemoteHost()    获取客户端的主机名
getRemoteAddr()    获取客户端的ip地址
getServerName()    获取服务器的名字
getServerPath()    获取客户端所有请求的脚本文件的文件路径
getServerPort()    获取服务器的端口号
getCookies()    获取客户端保存的Cookies数据Request对象域
在request域内存放数据。
Request.setAttribute(String name,Object obj);
Name:变量名。
Object:传递的数据。
获取request域内的数据。
Request.getAttribute(String name);
2.    Response响应对象
Response对象用于响应客户请求并向客户端输出信息,它封装了jsp生产的响应,并发送到客户端以响应客户端的请求。请求的数据可以是多种数据类型,甚至文件。
禁用缓存
Response.setHeader(“Cache-Control”,”no-store”);
Response.setDateHeader(“Expires”,0);
1.    设置页面自动刷新
Response.setHeader(“refresh”,0);
2.    定时跳转网页
Response.setHeader(“refresh”,”5;url=login.jsp”);
设置mime类型
Response.setContentType(String  type);
Type可选类型:text/html、text/plain、application/x_msexcel、application/msword等。
页面重定向
Response.sendRedirect(String  path);
Path:URL路径。不同主机的URL路径需要添加http://…
3.    Out输出对象
Out对象向客户端浏览器输出信息,并管理应用服务器上的输出缓冲区。
输出数据。
Out.print(String string)方法。
Out.println(String string)方法。
管理缓冲区
方法    说明
clear()    清除缓冲区中的内容
clearBuffer()    清除当前缓冲区的内容
isAutoFlush()    检测当前缓冲区已满时是自动清空,还是抛出异常
flush()    刷新流
getBufferSize()    获取缓冲区的大小4.    Session对象
Session的生命周期,是作用在一个浏览器中,在各个页面中共享数据,无论当前浏览器存在多个页面之间跳转,整个用户会话一直存在。直到浏览器关闭。
通过session对象存储数据和提取数据。
存储数据:
Session.setAttribute(String name,Object obj);
Name:存放数据的变量名。
Obj:存放的对象。
获取数据:
Session.getAttribute(String name);
Name:获取数据的变量。同时获取值。
移除对话中的数据:
Session.removeAttribute(String name);
Name:需要删除的变量名。
设置会话的有效时间:
Tomact服务器默认会话时间为30分钟。不过session也可以自己设置会话时间。
Session.setMaxInactiveInterval(int time);
Time:指有效时间,单位为秒。
收到注销session:
Session.invalidate();5.    application对象
application对象用于保存所有应用程序中的公有数据,与session相比application的生命周期更长。Application的生命周期跟服务器相关的,服务器启动是创建application服务器关闭时注销application对象。通常使用application对象统计网站访问的次数和聊天信息等。存储数据:
Application.setAttribute(String name,Object obj);
Name:变量的名称。
Obj:保存的对象。
获取application对象使用的属性名和属性值:
Application.getAttributeNames();
实例:
因为要使用Enumeration对象,所以要在jsp页面的Page指令里添加import=”java.util.*”的内容。
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="java.util.*"%><%
application.setAttribute("cuncu", "存储");
Enumeration enema=application.getAttributeNames();//获取application范围内的全部属性while(enema.hasMoreElements()){String name=enema.nextElement().toString();//获取属性名Object value=application.getAttribute(name);//获取属性值out.print(name+":");out.println(value);}
%>根据变量名获取数据:
Application.getAttribute(String name);
Name:变量的名称。
根据变量名删除数据:
Application.removeAttribute(String name);
Name:根据变量名删除数据。配置Web应用的初始化参数:Application对象提供了访问应用程序初始化参数的方法,该参数在web.xml文件中设置。Web.xml文件位于Web应用所在目录下的Web-inf子目录中,该文件中通过<context-param>标记配置应用程序初始化参数。
Web.xml配置实例:
<context-param>
<param-name>home</param-name>
<param-value>http://www.baidu.com</param-value>
</context-param>
获取初始化对象:
Application.getInitParameter(String name);
Name:web文件中的配置名称(param-name)获取初始化参数的枚举:
Application.getInitParamterNames();
Web.xml文件配置信息:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">
<context-param>
<param-name>home</param-name>
<param-value>http://www.baidu.com</param-value>
</context-param>
</web-app>
实例:
<%
application.setAttribute("cuncu", "存储");
Enumeration enema=application.getInitParameterNames();//获取application范围内的全部属性
String valuee=application.getInitParameter("home").toString();
out.print(valuee);while(enema.hasMoreElements()){String name=enema.nextElement().toString();//获取属性名String value=application.getInitParameter(name).toString();//获取属性值out.print(name+":");out.println(value);}
%>6.    page对象
page对象代表jsp本身,只在jsp页面内才是合法的。该对象本质上包含当前Servlet接口引用的变量,可以看做是this关键字的别名。
Page对象的常用方法:方法    说明
getClass()    返回当前Object的类
hashCode()    返回该Object的哈希代码
toString()    把该Object类转换为字符串
Equals(Object obj)    比较该对象和指定的对象是否相等7.    pageContext对象
pageContext对象是一个比较特色的对象,通过它可以获取jsp页面的request、response、session、application、exception等对象。PageContext对象的方法:
方法    说明
Forward(java.lang.String relativeUtlpath)    把页面转发到另一个页面
getAttribute(String name)    获取参数值
getAttributeNamesInScope(int scope)    获取某范围的参数名称的集合,返回值为java.util.Enumeration对象
getException()    返回exception对象
getRequest()    返回request对象
getResponse()    返回Response对象
getSession()    返回Session对象
getOut()    返回out对象
getApplication()    返回application对象
getServletConfig()    返回Config对象
setAttribute(String name,object obj)    为指定范围内的属性设置属性值
removeAttribute(String name)    删除指定范围内的指定属性8.    Config对象
Config对象针对的是web.xml文件。
Config对象主要用于获取服务器的配置信息,当初始一个Servlet时,容器把某些洗洗脑通过config对象传递给Servlet。开发人员可以在web.xml文件中为应用程序配置环境中Servlet和jsp页面提供初始化参数。
Config的常用方法:
方法    说明
getServletContext()    获取Servlet上下文
getServletName()    获取Servlet服务器名
getInitParameter()    获取服务器所有初始参数名称,返回值为java.util.Enumeration对象
getInitParameterNames()    获取服务器中name参数的初始值9.    Exception对象
Exception对象用来处理jsp文件执行时发生的所有错误和异常,只有在page指令中设置isErrorPage属性值为true的页面才可以被使用,设置跳转的Error的页面属性errorPage=”error.jsp”。如果在jsp页面出现没有捕捉到的异常,这会生成exception对象,并将其传送在page指令中设置的错误页面中,然后在错误页面中处理相应的exception对象。
Exception对象的常用方法:
方法    说明
getMessage()    返回exception对象的异常信息字符串
getLocalizedmessage()    返回本地化的异常错误
toString()    返回关于异常错误的简单信息描述
fillInStackTrace()    重写异常错误的栈执行轨迹

转载于:https://www.cnblogs.com/gynbk/p/6556289.html

jsp的9个内置对象相关推荐

  1. JSP的9个内置对象(隐含对象)

    JSP的9个内置对象(隐含对象) JSP内置对象是指在JSP页面系统中已经默认内置的Java对象,这些对象不需要开发人员声明即可使用. 9个内置对象如下: page:代表当前JSP页面 request ...

  2. JSP的9个内置对象-application

    JSP页面中包含9个内置对象,这9个内置对象都是Servlet API的类或者接口的实例,只是JSP规范将它们完成了默认初始化,即它们已经是对象,可以直接使用. application:javax.s ...

  3. Java Web学习总结(16)——JSP的九个内置对象

    一.JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理.JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet ...

  4. JSP页面元素,内置对象及request详解

    JSP的页面元素: a. 脚本Scriptlet 1.<% 局部变量,Java语句 %> 2.<%! 全局变量,定义方法 %> 3.<%= 输出表达式 %> 一般而 ...

  5. JSP的9个内置对象-response

    response代表服务器对客户端的响应.大部分时候,程序无须使用response来响应客户端请求,因为有个更简单的响应对象-out.它是页面输出流,是JstWriter的实例.JspWriter是W ...

  6. JSP的9个内置对象-session

    session代表一次用户会话,其含义是:从客户端浏览器连接服务器开始,到客户端浏览器与服务器断开为止,这个过程就是一次会话. session通常用于跟踪用户的会话信息,如判断用户是否登录系统,或者在 ...

  7. JSP的9个内置对象-request

    request:javax.servlet.http:HttpServletRequest的实例,该对象封装了一次请求,客户端的请求参数都被封装在该对象里.获取客户端请求参数必须使用该对象.常用的方法 ...

  8. jsp内置对象与el内置对象

    jsp有九种内置对象 1). request 请求对象 javax.servlet.ServletRequest 当客户端向服务器端发送一个请求,服务器向客户端返回一个响应后,该请求对象就被销毁了; ...

  9. java遇上html,JAVA遇见HTML——JSP篇:JSP内置对象(上)

    JSP九大内置对象 JSP内置对象是Web容器创建的一组对象,不使用new关键就可以使用的内置对象. int[] value={60,70,80}; for(int i:value){ out.pri ...

最新文章

  1. 马斯克Neuralink联合创始人宣布离职,此前尚未推出上市产品
  2. R语言与数据分析:时间序列简单介绍
  3. 全卷积(FCN)论文阅读笔记:Fully Convolutional Networks for Semantic Segmentation
  4. 什么导致了交换机端口呈现err-disable状态?
  5. 其中一个页签慢_渭南提升一个大专学历的有效方法
  6. Python优雅地可视化数据
  7. 如何使用SQL Server链接服务器查询Excel数据
  8. 彻底告别“人工+Excel”低效模式,传统制造业实现“一站式”数据化管理
  9. JavaScript 中的函数式编程实践
  10. Dreamweaver 8 jquery 代码提示
  11. Android基础类之BaseAdapter
  12. 网关支付、银联代扣通道、快捷支付、银行卡支付分别是怎么样进行支付的?
  13. java sqlite读取数据库_java如何读写sqlite数据库
  14. Python 加性高斯白噪声 AWGN
  15. 王可欣作业一 统计软件简介与数据操作
  16. Git,一些基础命令说明
  17. 全平台生产力神器-utools
  18. java程序作弄别人_我的世界:作弄基友,戏耍熊孩子?家中常备红石陷阱,谁来谁遭殃!...
  19. Revit技巧 | 如何做出一个爆炸分析图?
  20. 2019java面试3年_Java回顾#3 – 2019年对于社区而言最重要的事情

热门文章

  1. 即时通讯:XMPP基础
  2. Nginx优化、服务器状态模块(--with-http_stub_status_module 的安装使用)
  3. IDEA2018软件安装教程
  4. java dayofweek_Java DayOfWeek getDisplayName()用法及代碼示例
  5. 如何掌握平面设计中的减法思维
  6. dp线长什么样子_怎么样选择好的DP线?
  7. java类和对象实例对象_Java类、对象和实例的理解
  8. php mail 失败,php-mail()失败,但返回true
  9. php5.3中ZendGuardLoader与wincache冲突问题的解决方法
  10. LLVM笔记(5) - SMS