Javaweb-request与response          

   Servlet   生命周期(什么时候创建的,什么时候销毁的);    

Servlet(是一个运行在服务器上的java小程序);

  初始化:运行时初始化  ;

  销毁  : 服务器正常关闭时销毁   ;

  在javax.servlet.Servlet接口中定义了三个方法   init service destroy它们就是servlet的生命周期方法;  

  直接重写 init(),destroy(),service() 方法:  

 @Override  public void init(ServletConfig config) throws ServletException {  System.out.println("初始化");  }

 @Override  protected void service(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException {   System.out.println("处理来自浏览器的请求-----");  }

 @Override  public void destroy() {   System.out.println("销毁");  }    

toget()  topost() 重写 , 手写一个类继承httpservlet,最后需要配置 web.xml文件  servlet,  生成的话不需要配置web.xml文件,  

 Servlet生命周期总结:

 1.第一次访问servlet,servlet会被创建,并将servlet对象常驻内存,     调用init方法进行初始化操作,init方法中执行一次。

 2.调用service方法,用于处理来自浏览器端的请求,以后都是开启一个线程来处理浏览器端请求。  

3.当tomcat服务器正常关闭时,会调用destroy方法将servlet销毁。      

 response  响应对象:  

 (1) 重定向:就是冲向跳转到指定的资源页面;  第一种方法:  响应头 :response

 1.  设置状态码    response.setStatus(302);

 2.  设置响应头  "location";         (跳转的资源地址)  

response.setHeader("location", "/Project26/demo13");   

 第二种方法:       

   直接设置路径  response.sendRedirect("/Project26/demo13");    

 (2) 定时跳转:

 第一种方法:  设置响应头  "refresh";  response.setHeader("refresh", "5;/Project26/demo01.html");  

 第二种方法:

 <!DOCTYPE html>

<html> <head> <meta charset="UTF-8">

<meta http-equiv="refresh"  content="5;url=http://localhost:8080/Project26/demo02.html">

<title>Insert title here</title>

<script type="text/javascript">

 var ti = window.setInterval("showtime()", 1000);

 function showtime() {   var ele = document.getElementsByTagName("span")[0];  

 var times = ele.innerHTML;

  times--;  

 ele.innerHTML = times;  

 if (times <= 0) {    window.clearInterval(ti);   }

 } </script

> </head>

<body>

 <span>5</span>秒后跳转,如果跳转失败,  <a href="demo02.html">请点击</a>

</body>

</html>                

 3.操作响应正文:  

response.getwriter().write("内容")  防止乱码问题:  response.setContentType("text/html;charset=utf-8")        

      4.Request 对象详细介绍 :    我们在开发中可以通过request对象来获取http请求信息及客户机信息。  

http请求分为三部分 请求行  请求头  请求正文,通过request对象我们就可以获取http请求信息。    操作http请求行 :  1 . 2  .3  注意有返回值  (String)  

 1.请求的方式(方法 doget()  ,dopost()  )     String  getMethod();  

 2.获取请求的资源路径:  String  getRequestURI();    

3.获取请求的协议版本:  getProtocol();        

 5. 操作http请求正文:  问题:什么情况下请求正文有内容?   

只要有请求参数的情况下才会在正文中存在内容。    

问题:怎样可以获取到请求参数?

 String getParameter(String)  根据指定的请求参数的名称获取对应的值。

   String[] getParameterValues(String);  根据指定的请求参数的名称获取对应的多组值。

   Map<String,String[]> getParameterMap();  它是获取所有的请求参数封装的Map集合,集合的key就是请求参数的名称。

   Enumeration getParameterNames()  它是获取所有的请求参数的名称封装到Enumeration中。  

 (reqeust.setCharacterEncoding(“utf-8”)来处理请求参数乱码。)

Javaweb-request与response的更多相关文章

  1. JavaWeb Request和Response

    1. Request与Response 1.1. Web应用运行机制 到目前为止,我们已经掌握了Web应用程序的运行机制,现在学习的就是Web应用程序运行机制中很重要的内容 —— Request与Re ...

  2. 超全面的JavaWeb笔记day10<Response&Request&路径&编码>

    1.Response 2.Request 3.路径 4.编码 请求响应流程图 response 1.response概述 response是Servlet.service方法的一个参数,类型为java ...

  3. JavaWeb核心篇(2)——Request和Response

    JavaWeb核心篇(2)--Request和Response 上篇文章中提及到了Servlet,在Servlet中我们主要继承了HTTPServlet类,在HTTPServlet类中我们会接触到两个 ...

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

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

  5. javaweb入门-----request与response的作用

    request对象和request对象的原理 1.request和response对象request对象和request对象的原理时由服务器创建的,我们来使用它们 2.request对象是来获取请求消 ...

  6. request和response的复习

    客户端发来的请求,服务器将请求封装成request对象,包括请求头和请求的数据等.创建response对象,调用Servlet的Service()方法传递这两个参数,使用HttpServlet就是将这 ...

  7. 解析Request和Response

    简介: Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象. request和response对象即然代表请求和响应 ...

  8. Request 和 Response 原理

    * Request 和 Response 原理:     * request对象和response对象由服务器创建,我们只需要在service方法中使用这两个对象即可        * 继承体系结构: ...

  9. Request 、Response 与Server的使用

    纯属记录总结,以下图片都是来自 ASP.NET笔记之 Request .Response 与Server的使用 Request Response Server 关于Server.MapPath 方法看 ...

  10. request 和response

    当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等. 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了We ...

随机推荐

  1. git知识总结-1.git基础之git reference

    1.前言 Git版本管理的内容,是一系列由40bytes SHA-1字符串所代表patch,而Git References,则是对这些字符串的引用(也可以理解为别名).为什么需要别名呢?因为这些字符串 ...

  2. Gitlab_ansible_jenkins三剑客①搭建gitlab的详细步骤

    环境准备 1.关闭selinux和防火墙 [root@node1 lesson2]# vim /etc/sysconfig/selinux SELINUX=disabled # systemctl s ...

  3. centos命令安装

    1.解决ifconfig命令失效:需要安装net-tools工具 yum install net-tools 2.免密码登录 (1)通过命令,产生公钥信息 ssh-keygen -t rsa 如果提示 ...

  4. hololens Vuforia新时期的开发注意事项

    首先是导入的时候unity版本 HolotoolKit的版本 是否搭配.按照推荐的版本号去下载安装: 其次是在原本的相机的设置. View of field 大小设置为60,不然会造成页面的放大,然后 ...

  5. P2255 [USACO14JAN]记录奥林比克

    P2255 [USACO14JAN]记录奥林比克 题目描述 农民约翰热衷于所有寒冷天气的运动(尤其是涉及到牛的运动), 农民约翰想录下尽可能多的电视节目. 为moolympics电视时间表由N个不同的 ...

  6. 《剑指offer》和为S的两个数字

    本题来自<剑指offer> 反转链表 题目: 思路: C++ Code: Python Code: 总结:

  7. 1、Jenkins的安装与简单配置

    Jenkins安装 1.安装Jenkins之前先部署安装java环境(java环境安装另外参考安装文档) 注意:Jenkins 需要运行 Java 5以及以上的版本. 安装环境:CentOS7.3+J ...

  8. [原创]免固件开发USB2.0 FPGA方案 速度40Mbyte/s+

    USB 2.0接口,实测速度40Mbyte/s: 一个接口实现两种功能(USB2.0+FPGA配置): 免固件开发: 完整的FPGA代码,即拿即用: FPGA逻辑工程师开发USB接口福音: 平台可移植 ...

  9. James Munkres Topology: Sec 22 Exer 3

    Exercise 22.3 Let \(\pi_1: \mathbb{R} \times \mathbb{R} \rightarrow \mathbb{R}\) be projection on th ...

  10. Python Trick —— 命令行显示

    1 应用场景 在命令行展示下,有以下两种场景. 进度条显示.在同一行展示不断的更新的进度条. 信息显示/隐藏控制.比如希望向多个用户展示不同信息,各个用户彼此保密. 2 进度条展示 跟c语言类似,打印 ...