JavaWeb03 --Response

本文详细介绍了HttpServletRequest在Servlet中的作用,包括其在服务请求处理中的地位,HTTP响应体的构成(响应行、响应头和响应体)、常用响应头设置方法,以及资源跳转的重定向与转发的区别。
摘要由CSDN通过智能技术生成

一.HttpServletRequest的概述

        客户端发送给服务器端的数据我们创建Servlet时会覆盖service()方法.service方法中的两个参数之一的request的类型是HttpServletRequest. HttpServletRequest是ServletRequest的子接口

二.运行流程.如图所示

三.Http响应体

Http响应体由相应行,响应头和相依体三部分组成

        3.1响应行

                响应行由http协议的版本和响应状态码两部分组成 ,状态码由以下:

               ①1xx---服务器接受客户端的消息但是没有接收完成,接收了但是没有完全接受.

               ②2xx:成功了                        ③:3xx: 重定向. 302(重定向) 304(访问缓存)

               ④4xx:客户端错误  经典:404(没有对应的资源)   405(请求方式没有对应的doXXX方法)

               ⑤服务器端错误  经典: 500(服务器内部错误)

        3.2 响应头

               3.2.1 常用的有以下这些:

                        ①Content-Type---服务器告诉客户端这次响应体数据的格式以及编码格式 

                        ②Content-disposition ---服务器告诉客户端用什么格式打开响应体数据

                        ③in-line ---默认值,在当前页面内打开 

                         ④attachment;filename=xxx  ---以附件形式打开相应体,常用于文件的下载

    3.2.2 一些添加和设置的方法

                    add: addHeader(String n,String v)                 addIntHeader(String n,int v) addDateHeader(String n,long d)

                 set: setHeader(String n,String v)                setIntHeader(String n,int v) setDateHeader(String n,long d)

        3.3响应体 

        getWriter() 获得字符流,可以将字符串设置到response缓冲区中,之后Tomcat会把缓冲区中的内容组装成Http相应返回给浏览器端

        setContentType()方法,首先我们现到web.xml文件中找到相应类型对应的mimetype类型,设置到这里面能够指定浏览器解析页面的编码方式

         ServletOutputStream getOutpouStream() 可以获得字节流,注意,如果是定义的类想要字节流输入必须要序列化实现Serializable接口

四.资源跳转

        资源跳转的方式有重定向和转发两种

                1.重定向:地址栏发生变化,可以访问其他站点(服务器)的资源,是两次请求,不可以用request对象来共享数据

                2.转发:地址栏不发生变化,只能访问当下服务器的资源,是一次请求所以可以使用request对象来共享数据

                路径:以"/'开头的路径是绝对路径,不是以"/"开头的路径是相对路径

                        相对路径不可以确定唯一资源,可能会出现找资源跳转后不到的情况,

                        绝对路径可以确定唯一的资源,不会出现资源跳转后找不到的情况

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值