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所有的请求.返回都由中间件来完成. ...
随机推荐
- Learning Roadmap of Robotic Operating System (ROS)
ROS Wiki: http://wiki.ros.org/ Robots Using ROS Textbooks: A Gentle Introduction to ROS Learning ROS ...
- js通过日期计算属于星期几
var arys1 = new Array(); arys1 = "2016-09-25".split('-'); //日期为输入日期,格式为 2013-3-10 var ssda ...
- Android 高清加载巨图方案 拒绝压缩图片
Android 高清加载巨图方案 拒绝压缩图片 转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/49300989: 本文出自:[张 ...
- C 语言学习 第三次作业总结
本次作业内容: For循环的使用 If判断语句的使用 常用数学运算表达式的使用 数学函数库中几个常见函数的使用及自我实现 将操作代码提交到coding 作业总结: For循环是C语言中一种基本的循环语 ...
- Ubuntu 下,修改 Mac address
ifconfig // check Mac address sudo ifconfig eth0 down sudo ifconfig eth0 hw ether xx:xx:xx:xx: ...
- C++ URLDecode和URLEncode实现——仅限gb2312,非utf8
转载--http://blog.163.com/zhangjie_0303/blog/static/9908270620148251658993/ #include <iostream> ...
- Centos7安装Mono(以4.6.0)为例
本文记录mono安装的必须步骤,由于只是一个记录因此操作系统及mono版本都以当前环境为准. 1:环境依赖 操作系统为CentOS7.0,先安装mono依赖的各种组件: yum -y install ...
- extracting fasta records from a multi-fasta file based on a list using awk
for i in $(cat gene_list) do awk -v RS=">" '($1==a){print ">"$0}' a=$i inp ...
- mysql免安装使用(win7 64位系统)
一.解压 二.以管理员身份运行cmd 三.cmd命令进入到解压后的mysql文件bin目录下 四.将mysql服务添加到windows服务中.cmd在bin目录下输入:mysqld -install ...
- 转-ArcGIS Engine中的License设置
AE开发中的License有两种方法进行设置,一种是通过LicenseControl控件,另一种是通过IAoInitialize接口设置.整个应用程序中只能有一种方式存在,如果进行了两种License ...