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所有的请求.返回都由中间件来完成. ...
随机推荐
- flex align-content中的描述的“多根轴线的对齐方式”中的“多根轴线”到底是什么
flex 有两条轴线,根据flex-flow 设置的来判断的,水平为主轴的话,那么值为row,垂直为主轴的话那么为column: 其中设置align-items 和 align-content都是来设 ...
- LeetCode "448. Find All Numbers Disappeared in an Array"
My first reaction is to have an unlimited length of bit-array, to mark existence. But if no extra me ...
- K - 迷宫问题
/*定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, ...
- css样式加载顺序及覆盖顺序深入理解
注:内容转载 很多的新手朋友们对css样式加载顺序和覆盖顺序的理解有所偏差,下面用示例为大家详细的介绍下,感兴趣的朋友不要错过 { height: 100%; width: 200; position ...
- string.IsNullOrEmpty和string.IsNullOrWhiteSpace方法的区别
string.IsNullOrEmpty 都知道,这个功能是判断字符串是否为:null或者string.Empty.如果是如"\t"这样的字符就返回false了,为了达到判断过滤这 ...
- mysql-批量修改表字段中的某一部分内容
MySQL批量替换指定字段字符串语句(1)updat 表名 set 字段名=replac(字段名,'原来的内容','替换后的内容') 举一个例子,就是我实际操作的时候的命令: update cpg14 ...
- java-map和object装换
/** * 使用org.apache.commons.beanutils进行转换 */ class A { public static Object mapToObject(Map<String ...
- AutoVFL(适配)
1.添加约束(系统) a.一个约束(上下左右) +(instancetype)constraintWithItem:(id)view1 attribute:(NSLayoutAttribute)att ...
- 使用.NET实现断点续传
http://www.cnblogs.com/goody9807/archive/2007/06/05/772501.html 断点续传的原理在了解HTTP断点续传的原理之前,先来说说HTTP协议,H ...
- Structure Of Management Information - SNMP Tutorial
30.6 The Structure Of Management Information In addition to the standards that specify MIB variables ...