request response
request 和 response
这两个对象是出现在service方法中.service方法是用来接收请求处理请求,完成响应的.
接受请求指的就是request对象
完成响应指的就是response对象.
request,response对象是怎么来的?
request和response都是服务器创建的
request是封装了浏览器发送过来的请求信息.
response可以理解成是一个空箱子.用来让我们放置想要响应给浏览器的数据.
//==========================================================================================================================================================
response 具体可以干嘛?
HTTP响应协议
响应首行 HTTP/1.1 200 描述信息
setStatus(int sc) ==> 设置状态码(设置良性的状态例如 200 302 304等) setStatus(404)
void sendError(int sc) ==> 设置状态码(设置表示错误的状态吗 404 500)
void sendError(int sc, String msg) ==> 设置状态码同时也设置描述信息 void sendError(404, "就是找不到!");
响应头
格式都是键值对 key:value , key:value1,value2
setHeader(String name, String value) ==> 该方法可以为响应设置一个响应头, 参数就是 键值对. key:value 设置相同的key 会覆盖.
setDateHeader(String name, long date) ==> 如果要添加long类型的header使用该方法
setIntHeader(String name, int value) ==> 如果要添加int类型的header使用该方法. content-length
addHeader(String name, String value) ==> 也是可以设置一个响应头. key:value1,value2 .适用于 一个key对应多个值. 调用add相当于给一个key添加多个值.
addCookie(Cookie cookie) ==> 操作后天要学习的cookie
addDateHeader(String name, long date) ==> 如果要添加long类型的header使用该方法
addIntHeader(String name, int value) ==> 如果要添加int类型的header使用该方法. content-length
响应空行
响应正文
getOutputStream ==> 获得一个输出的字节流对象 ,向浏览器输出字节流.
getWriter ==> 获得一个输出的字符流对象, 向浏览器输出字符流.
package cn.jiemoxiaodi.servlet.status; import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class AServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { // response.sendError(404, "错啦啊啊 啊");
// response.sendError(302);
// 重定向
// response.setHeader("Location","http://www.baidu.com");//
response.sendRedirect("http://www.baidu.com"); } }
request response的更多相关文章
- request \response 总结
request&response request 1.获得信息的方法 1> 获得请求首行信息的方法 *getMethod *getContextP ...
- track message forwards, avoiding request loops, and identifying the protocol capabilities of all senders along the request/response chain
https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html The TRACE method is used to invoke a remote, ...
- Ng Http Request/response格式转换
angular作为Single Page Application推荐的交互方式当然是基于json的ajax调用.但今天要说的是当你不幸工作在一个遗留或者不可控制的服务上,而这服务是基于非json提交方 ...
- 过滤器中的chain.doFilter(request,response)
Servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是过滤字符编码.做一些业务逻辑判断等.其工作原理是,只要你在web.xml文件配置好要 ...
- 对chain.doFilter(request,response)的理解
他的作用是将请求转发给过滤器链上下一个对象.这里的“下”指的是哪里 ? 指的是下一个filter,如果没有filter那就是你请求的资源. 一般filter都是一个链,web.xml 里面配置了几个就 ...
- chain.doFilter(request,response)含义
过滤器的生命周期一般都要经过下面三个阶段: 初始化 当容器第一次加载该过滤器时,init() 方法将被调用.该类在这个方法中包含了一个指向 Filter Config 对象的引用.我们的过滤器实际上并 ...
- controlling the variance of request response times and not just worrying about maximizing queries per second
http://highscalability.com/blog/2010/11/4/facebook-at-13-million-queries-per-second-recommends-minim ...
- ZeroMQ之Request/Response (Java)
自己最开始是在cloud foundry中接触过消息服务器(nats),或者说是消息中间件,也算是初步知道了一个消息服务器对于分布式的网络系统的重要性,后来自己也曾想过在一些项目中使用它,尤其是在一些 ...
- 【转】对Django框架架构和Request/Response处理流程的分析
本文转载于疯狂的蚂蚁. 一. 处理过程的核心概念 如下图所示django的总览图,整体上把握以下django的组成: 核心在于中间件middleware,django所有的请求.返回都由中间件来完成. ...
随机推荐
- 学习C++.Primer.Plus 10 对象和类
1.类的声明和定义 类的声明和定义. 类声明的格式如下: class className { private://private 是类对象的默认访问控制,因此,可以省略 data member del ...
- jenkins 入门教程(上)
jenkins是一个广泛用于持续构建的可视化web工具,持续构建说得更直白点,就是各种项目的"自动化"编译.打包.分发部署.jenkins可以很好的支持各种语言(比如:java, ...
- 析构函数virtual与非virtual区别 [转]
作为通常的原则,如果一个类定义了虚函数,那么它的析构函数就应当是virtual的.因为定义了虚函数则隐含着:这个类会被继承,并且会通过基类的指针指向子类对象,从而得到多态性. 这个类可能会被继承, ...
- 微信支付开发(1) JS API支付
关键字:微信支付 微信支付v3 jsapi支付 统一支付 Native支付 prepay_id 作者:方倍工作室原文: http://www.cnblogs.com/txw1958/p/wxpayv3 ...
- Android开发的菜鸟小记
1.主线程异常:添加网络连接: 2.权限异常: 3.空指针异常:NullException: 添加网络权限: DEBUG:Connected to the target VM, address: 'l ...
- C#如何防止程序多次运行的技巧
一.使用互斥量Mutex弄懂了主要的实现思路之后,下面看代码实现就完全不是问题了,使用互斥量的实现就是第四点的思路的体现,我们用为该程序进程创建一个互斥量Mutex对象变量,当运行该程序时,该程序进程 ...
- Matlab2015入门学习02
1. 续行符 ... 当物理的一行之内写不下时, 在 物理行的结尾加上三个小黑点 >>跟在运算符之后,可以不留space空格 >>跟在数字之后,若不留白space,出错; 留一 ...
- php 字符串和数字比较一些问题
本文章来给大家介绍关于php 字符串和数字比较一些问题,因为数字与字符在php中是不同的数据类型,所以在比较时可能会有很多的问题. ,1,2等等,其中0标示成功,其他表示不同的错误代码.程序通过 if ...
- 解决:dpkg:处理 xxx (--configure)或E: Sub-process /usr/bin/dpkg returned an error code (1)
问题重现: 问题解决办法: #先备份原来的,然后重新新建 sudo mv /var/lib/dpkg/info /var/lib/dpkg/info.bak //现将info文件夹更名 sudo mk ...
- 69个经典Spring面试题和答案
Spring 是个java企业级应用的开源开发框架.Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用.Spring 框架目标是简化Java企业级应用开发,并通过PO ...