接着上一篇我们在搞完servlet的终极模式之后,接着就需要对发送的请求做出响应了

在这里,所谓的响应,都是返回页面的语言在浏览器上显示也就是HTML语言,所以返回的结果只有HTML语言才能在浏览器上显示

1.response

  response在使用之前有需要设置response的编码格式,否则输入中文就会乱码设置时需要注意,一定要在response.getWriter()之前,因为有些servlet在生成的时候回默认在doget生成一个,否则就没有用response.getWriter()

response.setHeader("Content-type", "text/html;charset=UTF-8");
response.setCharacterEncoding("UTF-8");

乱码请设置

1.response.getWriter()  写的字符串就是HTML就是网页源代码,也就是说换行就是writer.write("<br>");

  

PrintWriter writer= response.getWriter();
writer.write("\n\raaa 响应成功\n\r\naaa");

writer方式

2.如果要返回一个页面则需要重定向

response.sendRedirect("res_and_rsp.html");

重定向

2.request

1.网页中填写的表单,会以request.getParameter()的方式取出

  

String username = request.getParameter("username");
String password = request.getParameter("password");

requser取出form中的值

2.request获得当前页面的路径

String path = request.getContextPath();

3.转发请求    先获取一个转发器   然后输入路径在forward即可

RequestDispatcher Dispatcher= request.getRequestDispatcher("res_and_rsp.html");
Dispatcher.forward(request, response);

转发

转发的重定向的区别

1.1转发对浏览器来说是一次请求 处理发送的过程在服务器内部发生,也就是说,浏览器告诉服务器要给我一个东西,服务器就给了

1.2重定向是两次请求 首先请求服务器,服务器告诉你,你需要请求的页面地址,然后你再次请求该页面地址得到结果

2.1转发地址栏地址无变化,重定向地址栏有变化

3.1转发可以访问WEB-INF目录下的资源,重定向不可以

//转发
RequestDispatcher Dispatcher= request.getRequestDispatcher("WEB-INF/one.html");
Dispatcher.forward(request, response); //重定向
response.sendRedirect("WEB-INF/one.html");

WEB-INF/one.html文件测试

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>你有权利</h1>
</body>
</html>

WEB-INF/one.html

4.1转发可以共享request域中的数据,重定向不可以共享request域中的数据

五:request和response的使用的更多相关文章

  1. 第十五节:HttpContext五大核心对象的使用(Request、Response、Application、Server、Session)

    一. 基本认识 1. 简介:HttpContext用于保持单个用户.单个请求的数据,并且数据只在该请求期间保持: 也可以用于保持需要在不同的HttpModules和HttpHandlers之间传递的值 ...

  2. Scrapy(五):Response与Request、数据提取、Selector、Pipeline

    学习自Requests and Responses - Scrapy 2.5.0 documentation Request在Spider中生成,被Downloader执行,之后会得到网页的Respo ...

  3. Request和Response对象

    Request 和 Response 对象起到了服务器与客户机之间的信息传递作用.Request 对象用于接收客户端浏览器提交的数据,而 Response 对象的功能则是将服务器端的数据发送到客户端浏 ...

  4. 【转】request和response的页面跳转传参

    下面是一位园友的文章: jsp或Servlet都会用到页面跳转,可以用 request.getRequestDispatcher("p3.jsp").forward(request ...

  5. JavaWeb(一)Servlet中的request与response

    一.HttpServletRequest概述 1.1.HttpServletRequest简介 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP ...

  6. Fiddler抓包4-工具介绍(request和response)

    前言 本篇简单的介绍下fiddler界面的几块区域,以及各自区域到底是干什么用的,以便于各好的掌握这个工具 一.工具简介 1.第一块区域是设置菜单,这个前面2篇都有介绍 2.第二块区域是一些快捷菜单, ...

  7. jsp内置对象request 和response

    1.request对象主要用于处理客户端的请求 request对象常用方法 一.String  request.getParameter(String name)             根据页面表单 ...

  8. Fiddler抓包4-工具介绍(request和response)【转载】

    本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/p/6719717.html 前言 本篇简单的介绍下fiddler界面的几块区域,以及各自区域到 ...

  9. Fiddler抓包-工具介绍(request和response)

    from:https://www.cnblogs.com/yoyoketang/p/6731121.html 本篇简单的介绍下fiddler界面的几块区域,以及各自区域到底是干什么用的,以便于各好的掌 ...

  10. 【转载】Servlet中的request与response

      一.HttpServletRequest概述   1.1.HttpServletRequest简介 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时, ...

随机推荐

  1. Verilog基础入门——Vivado工程创建(三)

    Verilog基础入门--Vivado工程创建(三) Vivado是Verilog语言的一个集成环境,目前使用的版本为英文版,简单介绍一下在Vivado中创建一个工程并写入源文件 [配置] win10 ...

  2. selenium-窗口切换

    方法一 # 获取打开的多个窗口句柄 windows = driver.window_handles # 切换到当前最新打开的窗口 driver.switch_to.window(windows[-1] ...

  3. Codeforces Round 662 赛后解题报告(A-E2)

    Codeforces Round 662 赛后解题报告 梦幻开局到1400+的悲惨故事 A. Rainbow Dash, Fluttershy and Chess Coloring 这个题很简单,我们 ...

  4. Prometheus入门教程(三):Grafana 图表配置快速入门

    文章首发于[陈树义]公众号,点击跳转到原文:https://mp.weixin.qq.com/s/sA0nYevO8yz6QLRz03qJSw 前面我们使用 Prometheus + Grafana ...

  5. xUtils简介和使用方法

    xUtils简介 xUtils 包含了很多实用的android工具. xUtils 最初源于Afinal框架,进行了大量重构,使得xUtils支持大文件上传,更全面的http请求协议支持(10种谓词) ...

  6. JS里的小细节,持续更新

    判断把值定为 false 集合 JavaScript里把 null.undefined.0.''.NaN 都视为false,而其他值一概为 true Map Map是一组键值对的结构,具有极快的查找速 ...

  7. zookeeper Cli的常用命令

    zookeeper Cli的常用命令 服务管理 启动ZK服务: zkServer.sh start 查看ZK状态: zkServer.sh status 停止ZK服务: zkServer.sh sto ...

  8. 关于“Cannot resolve table 'user'”报错的问题解决

    springboot+vue建立映射时,后端引用@Table(name="user") 来对应表名 user,但引用后报错"Cannot resolve table 'u ...

  9. Spring入门-----------------属性注入和对象注入

    属性注入即通过setter方法注入bean的属性或依赖对象. 属性注入使用<property>元素,使用name属性指定bean的属性的名称,value属性或<value>子节 ...

  10. css-设置背景透明度

    实现透明的css方法通常有以下3种方式,以下是不透明度都为80%的写法: css3的opacity:x,x 的取值从 0 到 1,如opacity: 0.8 兼容性:IE6.7.8不支持,IE9及以上 ...