好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

jsp内置对象详解.ppt

70页
  • 卖家[上传人]:shaoy****1971
  • 文档编号:112442378
  • 上传时间:2019-11-06
  • 文档格式:PPT
  • 文档大小:576.50KB
  • / 70 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第4章 JSP内置对象详解 Jsp基础,熟练掌握 为什么叫JSP内置对象 不用声明就可以在jsp页面的脚本部分使用 第4章 JSP内置对象详解 4.1 请求对象:request 4.2 响应对象:response 4.3 会话对象:session 4.4 多客户端共享对象:application 4.5 页面对象:page 第4章 JSP内置对象详解 4.6 页面上下文对象:pageContext 4.7 输出对象:out 4.8 配置对象:config 4.9 异常对象:exception http协议的运行过程 •WWW协议(World Wide Web) •使用浏览器从网站获取HTTP页面时,使用HTTP (Hypertext Transfer Protocol)协议规定信息在 Internet上的传输方法,特别规定了浏览器与服务 器的交互方法 •从网站获取页面时,首先浏览器在网站上打开一 个对网络服务器的连接,并发出请求,服务器收 到请求后响应,返回结果 HTTP请求的结构 包括请求行、头域和可能的信息体 例: GET/hello.htm HTTP/1.1 Host: •一个典型的请求包含许多HTTP请求头。

      头提供了 关于信息体的附加信息及请求的来源,其中有些 头是标准的,有些头和特定的浏览器有关 •请求还可能包含信息体如表单内容 Accept:浏览器可接受的MIME类型 Accept-Charset:浏览器可接受的字符集 Accept-Encoding:浏览器能够进行解码的数据编码方式,如gzipServlet能够向 支持gzip的浏览器返回经gzip编码的HTML页面许多情形下这可以减少5到10 倍的下载时间 Accept-Language:浏览器所希望的语言种类,当服务器能够提供一种以上的语言 版本时要用到 Content-Length:表示请求消息的正文长度 Cookie:这是最重要的请求头信息之一 From:请求发送者的email地址,有一些特殊的web客户程序使用,浏览器不会用 到它 Host:初始URL中的主机和端口 Referer:包含一个URL,用户从该URL代表的页面出发访问当前请求的页面 User-Agent:浏览器类型,如servlet返回内容与浏览器类型有关则该值非常有用 UA=Pixel,UA-Color,UA-OS,UA-CPU:由某些版本的IE浏览器所发送的非标准 的请求头,表示屏幕大小、颜色深度、操作系统和CPU类型。

      HTTP响应的结构 •每个响应都由状态行开始,可以包含几个头及可 能的信息体,称作响应的HTTP头和响应信息体 •这些头和信息体由服务器发送给客户的浏览器, 信息体就是客户请求的网页的运行结果,对于JSP 页面,就是网页的静态信息 4.1 请求对象:request •内置对象request封装了用户提交的信息该对象 调用相应的方法可以获得封装的信息 •客户一般使用HTML表单向服务器的某个JSP页面 提交信息 •例: • •提交的手段 • 4.1 请求对象:request 4.1.1 获取请求参数 4.1.2 在作用域中管理属性 4.1.3 获取Cookie对象 4.1.4 获取客户端信息 参数“name”与form表单中的name属性对应,或者与提交链接的参 数名对应,如果参数值不存在,则返回null值,该方法的返回值类型是 String request对象通过getParameter()方法可以用来获取用户提交的数据 获取请求参数的使用格式如下: 获取请求参数 String name=request.getParameter(“name”) 例:request.getParameter(“boy”) 例: tree.jsp 获取文本框提交的信息: 获取按钮的名字: 例: try{ number=Double.parseDouble(textContent); if(number=0) { r=Math.sqrt(number); out.print(“”+String.valueOf(number)+”的平方根:”); out.print(“”+String.valueOf(r)); } else { out.print(“”+”请输入一个正数”); } } catch(NumberFormatException e) { out.print(“”+”请输入数字字符”); } •使用对象前确定客户是否已提交数据,如客户 还没有提交表单数据,那调用该对象就会出现 空对象错误。

      即NullPointException异常为了 避免使用空对象,可以添加如下代码: String textContent=request.getParameter(“girl”); double number=0,r=0; if(textContent==null) { textContent=“”; } 处理汉字对象 •当用request对象获取客户提交的汉字字符时, 会出现乱码问题,所以对含有汉字字符的信息 必须进行特殊处理 •首先,将获取的字符串用ISO-8859-1进行编码 ,并将编码存放到一个字节数组中,然后再将 这个数组转化成字符串对象,例: String textContent=request.getParameter(“boy”); Byte b[]=textContent.getBytes(“ISO-8859-1”); textContent=new String(b); 例: tree.jsp 获取文本框提交的信息: 获取按钮的名字: 在作用域中管理属性 在进行请求转发操作时,把一些数据带到转发后的页面处理这时, 就可以使用request对象的setAttribute()方法将数据设置在request范围内 存取。

      在request作用域中,设置转发数据的方法使用格式如下: request.setAttribute(“key”,value); 参数key为String类型的键名在转发后的页面取数据时,通过这个 键名来获取数据;参数value为Object类型的键值,代表需要保存在 request范围内的数据在requet作用域中,获取转发数据的方法使用格式 如下: Object object=request.getAttribute(“name”); 在requet作用域中,获取所有属性的名称集的方法使用格式如下 : request.getAttributeNames(); 该方法返回值是枚举类型(Enumeration)数据 示例:详见教材及源代码 index.jsp 用户注册信息 账号: 密码: 真实姓名: Email地址: 性别: 男 女 dealwith.jsp showUser.jsp 显示用户注册信息 账号: 密码: 真实姓名: Email地址: 性别: 获取Cookie对象 Cookie是Web应用程序保存用户相关信息提供的一种有效的方法, 它是一段文本信息,伴随着用户请求和页面在Web服务器和浏览器之间 传递。

      用户每次访问站点时,Web应用程序都可以读取Cookie包含的信 息在JSP页面中,可以通过requet对象中的getCookie()方法获取Cookie 中的数据,格式如下: Cookie[] cookie= request.getCookie(); 该方法返回值是Cookie数组 …………………… 获取客户端信息 request对象的一些方法可以用于确定组成JSP页面的客户端的信息 ,request对象用于访问请求行元素的方法如表所示 方法名称含义 String getMethod()返回用来生成请求的HTTP方法名称,例如get()方法或post()方法等 String getPathInfo()返回任何额外的路径信息,这些信息与服务器小程序路径、查询字符串之间的 URL相关联 String getRequestURI()返回请求的URI部分,位于HTTP请求第一行的协议名和查询字符串之间的内容 String getContextPath()返回请求URI部分,表示请求的应用程序环境 String getServletPath()返回请求URI部分,指定服务器小程序或JSP页面 String getQueryString()返回跟随在URI的路径部分后面的查询字符串 session和cookie •session是保存在服务端的内存里面,而cookie保 存于浏览器或客户端文件里面; •session是基于访问的进程,记录了一个访问的开 始到结束,当浏览器或进程关闭之后,session也 就“消失”了,而cookie更多地被用于标识用户, 它可以是长久的,用于用户跟踪和识别唯一用 户(Unique Visitor)。

      其他常用方法 •getRemoteAddr() 获取客户端的IP地址 •getRemoteHost() 获取客户端的名字 •getServerName() 获取服务器的名字 •getServerPort() 获取服务器的端口号 •getHeader()获取客户端的浏览器类型 4.2 响应对象:response •Response的http文件头: •http请求和http响应; •典型的http请求: post/tree.jsp/http/1.1 host:localhost:8080 accept_encoding:gzip,deflate Response的状态行 •当服务器对客户请求进行响应时,它发送的首行 称作状态行 •状态行包括3位数字的状态行代码和对状态代码的 描述 5类状态代码的简单描述 •1yy: (1开头的3位数)主要是实验性质的 •2yy:用来表明请求成功 •3yy:用来表明在请求满足之前应采取进一步的行 动 •4yy:当浏览器做出无法满足的请求时,返回该代 码 •5yy:用来表示服务器出现问题 4.2 响应对象:response 4.2.1 客户端与服务器端的交互 4.2.2 页面重定向 4.2.3 缓冲区的输出 4.2.4 response对象常用方法 客户端与服务器端的交互 request对象和response对象的结合可以使JSP更好地实现客户端与服 务器的信息交互。

      用户在客户端浏览器中发出的请求信息被保存在 request对象中并发送给Web服务器,JSP引擎根据JSP文件的指示处理 request对象,或者根据实际需要将request对象转发给由JSP文件所指定 的其他服务器端组件,如Servlet组件、JavaBean组件或EJB组件等处 理结果则以response对象的方式返回给JSP引擎,JSP引擎和Web服务器 根据response对象最终生成JSP页面,返回给客户端浏览器,这也是用户 最终看到的内容客户端与服务器端信息交互的流程如图所示 页面重定向 JSP页面可以使用response对象中的setRedirect()方法将客户请求重 定向到一个不同的页面资源例如: response.sendRedirect(“sanyang,jsp”) JSP页面还可以使用response对象中的sendError()方法指明一个错 误状态,该方法接受一个错误及一条可选的错误信息该信息将在内 容主体上返回给客户例如: response.sendError(500,”请求页面存在错误”); 上述两个方法都会中止当前的请求和响应response对象中用于重 定向的方法如下: vsendError(int number)方法:使用指定的状态码向客户发送错误响应。

      vsendError(int number,String msg)方法:使用指定的状态码和描述性消息向 客户发送错误响应 vsendRedirect(String location)方法:指定的重定向位置。

      点击阅读更多内容
      相关文档
      Unit2 Health and Fitness语法课件-(高教版2023·基础模块2).pptx 九年级数学提升精品讲义 用配方法求解一元二次方程(原卷版).docx 九年级数学提升精品讲义 一元二次方程的根与系数的关系(解析版).docx 2025学年九年级化学优学讲练(人教版) 化学实验与科学探究(解析版).docx 九年级数学提升精品讲义 一元一次不等式与一元一次不等式组(原卷版).docx 九年级数学提升精品讲义 因式分解(解析版).docx 九年级数学提升精品讲义 相似三角形的性质(原卷版).docx 2025年 初中七年级数学 相交线与平行线 知识突破速记与巧练(原卷版).docx 九年级数学提升精品讲义 中点模型之斜边中线、中点四边形(解析版).docx 2025学年九年级化学优学讲练(人教版) 分子和原子(解析版).docx 九年级数学提升精品讲义 正方形的性质(原卷版).docx 九年级数学提升精品讲义 用因式分解法求解一元二次方程(解析版).docx 2025年 初中七年级数学 实数 知识突破速记与巧练(原卷版).docx 九年级数学提升精品讲义 应用一元二次方程(原卷版) (2).docx 2025年 初中七年级数学 相交线与平行线 压轴专练速记与巧练(解析版).docx 九年级数学提升精品讲义 用公式法求解一元二次方程(解析版).docx 2025学年九年级化学优学讲练(人教版) 化学方程式的书写(原卷版).docx 九年级数学提升精品讲义 应用一元二次方程(解析版) (2).docx 2025年 初中七年级数学 数据的收集、整理与描述 综合测试速记与巧练(解析版).docx 九年级数学提升精品讲义 中点模型之斜边中线、中点四边形(原卷版).docx
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.