JavaWeb作业:request请求对象、response响应对象
发布日期:2022-03-08 21:50:47 浏览次数:1 分类:技术文章

本文共 1839 字,大约阅读时间需要 6 分钟。

1.请求和响应的概述:

什么请求:在浏览器地址栏输入地址,点击回车请求服务器,这个过程就是一个请求过程。

什么响应:服务器根据浏览器发送的请求,返回数据到浏览器在网页上进行显示,这个过程就称之为响应。

2.HttpServletResponse对象

HttpServletResponse是一个接口,它的父接口是ServletResponse,在开发中通常使用HttpServletResponse

响应信息分为三部分:响应行、响应头、响应正文(响应体)
(1).Web服务器收到一个http请求,会针对每个请求创建一个HttpServletRequest和HttpServletResponse对象,向客户端发送数据找HttpServletResponse,从客户端取数据找HttpServletRequest;
(2).HttpServletResponse对象可以向客户端发送三种类型的数据:a.响应头b.状态码c.数据
(3).自己去看HttpServletResponse的API
(4).rsponse常见应用:

1 发送状态码的相关方法:

1.设置状态码

setStatus(int sc) :参数就是状态码。
setStatus(int sc, String sm) :第一个参数表示状态码,第二个参数 就状态码的描述。
常见的状态码:200 响应成功
302 重定向
404 请求资源找不到
500 服务器代码出异常。
在这里插入图片描述

2.HttpServletRequest请求对象

HttpServletRequest它是一个接口,它的父接口ServletRequest,在开发中,常用的是带协议的请求对象。

请求消息:请求行,请求头,请求参数。
1.1 HttpServletRequest请求对象
1.获取请求行消息的相关方法:
常用的请求行方法:
1.获取请求提交的方式: getMethod();
2.获取请求的协议: getProtocol();
3.获取项目名称:getContextPath();
4.获取servlet路径:getServletPath();
5.获取请求路径: getRequsetURI(),getRequestURL();
uri对应的值:/项目名称/servlet路径
url对应的值:http://localhost:8080/uri
2.获取请求消息头相关的方法
1. 根据消息头,获取值: String value = getHeader(消息头的名称);
2. 获取所有的消息头: Enumeration er = getHeaderNames();
根据Referer请求消息头,做一个防盗链的案例:
3.获取请求参数相关的方法:
1.根据name属性值,获取用户输入的值:String value = getParameter(name属性对应的值);
2.根据name属性值,获取用户选择的值:String[] vaules = getParameterValues(name属性对应的值);
3.没有参数,获取所有值:Map<String ,String[]> map = getParameterMap();
4.解决请求参数的中文乱码问题:
中文乱码处理分两种情况:
第一种情况:处理get方式提交的中文乱码
使用的String的构造方法解决中文乱码:new String(字节数组,编码格式);
代码:String newvalue = new String(value.getBytes(“ISO8859-1”),“utf-8”);
第二种情况:处理post请求的中文乱码问题:
post提交,会把参数首先提交到request对象的缓冲区中,缓冲区默认编码是ISO8859-1,不支持中文
处理方法:把request缓冲区的编码给设置成支持中文的码表格式。
代码:request.setCharacterEncoding(“utf-8”);
5.通过Requset对象传递数据
什么域对象:在一定的范围内,可以存值和取值。
request域对象:在一次请求中,可以存值和取值。
存值: setAttribute(String key,Object obj);
取值:Object obj = getAttribute(String key);
移除: removeAttribute(String key);

转载地址:https://blog.csdn.net/m0_55680096/article/details/121381919 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:JavaWeb作业:HTML.CSS.JavaScript
下一篇:JavaWeb作业:Servlet、ServletConfig、ServletContext

发表评论

最新留言

不错!
[***.144.177.141]2024年05月01日 01时06分50秒