response对象的方法有哪些_一篇文章弄懂Request和Response(建议收藏复习)

一:HttpServletRequest

1.简介:

HttpServletRequest 是专用于HTTP协议的ServletRequest 子接口,它用于封装 HTTP 请求消息。

它在每次请求service()方法的时候,都会由容器创建一个新的对象,如图:

19332e2b984b6e01592320e3e0216679.png

2.功能介绍:

2.1,接收用户请求参数:

String getParameter(String name):通过指定名称获取参数值;String[] getParameterValues(String name):通过指定名称获取参数值数组,有可能一个名字对应多个值,例如表单中的多个复选框使用相同的name时;Enumeration getParameterNames():获取所有参数的名字;Map getParameterMap():获取所有参数对应的Map,其中key为参数名,value为参数值。

2.2,请求头信息解析:

24d22b51784e11e482bc096f1d5abf54.png

2.3,获取请求头信息:

getRemoteAddr方法返回发出请求的客户机的IP地址,其格式为“192.168.0.3”这种形式的字符文本。 (*) getRemoteHost方法返回发出请求的客户机的完整主机名。getRemotePort方法返回发出请求的客户机所使用的网络接口的端口号。getLocalAddr方法返回WEB服务器上接收当前请求的网络接口的IP地址。getLocalName方法返回WEB服务器上接收当前请求的网络接口的IP地址所对应的主机名。getLocalPort方法返回WEB服务器上接收当前请求的网络接口的端口号。getServerName方法返回当前请求所指向的主机名。 getServerPort方法返回当前请求所连接的服务器端口号。getScheme方法返回请求的协议名,例如http、https或ftp。getRequestURL方法返回客户端发出请求时的完整URL。   

HttpServletResponse

1.简介:

Response是Servlet.service方法的一个参数,类型为javax.servlet.http.HttpServletResponse。在客户端发出每个请求时,服务器都会创建一个response对象,并传入给Servlet.service()方法。response对象是用来对客户端进行响应的,这说明在service()方法中使用response对象可以完成对客户端的响应工作。

2.功能介绍:

主要分为以下四种:

l 设置响应头信息;

l 发送状态码;

l 设置响应正文;

l 重定向;

下面分别详解这四个功能:

2.1,设置响应头信息:

可以使用response对象的setHeader()方法来设置响应头,使用该方法设置的响应头最终会发送给客户端浏览器。

比如:

response.setHeader(“content-type”, “text/html;charset=utf-8”):设置content-type响应头,该头的作用是告诉浏览器响应内容为html类型,编码为utf-8。而且同时会设置response的字符流编码为utf-8,即response.setCharaceterEncoding(“utf-8”);

2.2,response响应正文

response是响应对象,向客户端输出响应正文(响应体)可以使用response的响应流,repsonse一共提供了两个响应流对象:

比如:

PrintWriter out = response.getWriter():获取字符流;ServletOutputStream out = response.getOutputStream():获取字节流;

2.3,设置状态码及其他方法

简单举几个设置响应码案例:

response.setContentType("text/html;charset=utf-8"):等同与调用response.setHeader(“content-type”, “text/html;charset=utf-8”);response.setCharacterEncoding(“utf-8”):设置字符响应流的字符编码为utf-8; response.setStatus(200):设置状态码;

2.4,设置重定向

说到重定向,我先说一下转发,然后你们再看对比:

2.4.1,请求转发

转发:将请求在服务器内部交给另一个组件再去执行,同时共享request中的连接。

2c3f379e79cd18a68684101ac233e2a7.png

2.4.2,重定向

重定向:就是将请求发送回浏览器。然后由浏览器再重新向服务器自动的发送一个请求。web资源受到客户端请求后,通知客户端去访问另外一个web资源

a70d06f4188454c0ea6b1f6b0b3dc6c4.png
0a8e5035675ab2ac70427b937efdaa5e.png

区别:

两者的区别就是转发是由服务器内部进行请求的,而重定向是浏览器请求后,返回一个状态码,浏览器自己再去请求返回的地址。

好了今天的文章就到这里了,觉得对自己有帮助的话关注一下小编哦。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值