2022年课时七——JSP第六次课 response对象的作用

简介: 2022年课时七——JSP第六次课 response对象的作用

response的基本知识

HttpServlet

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


request和response对象即代表了请求和响应,那我们要获取客户机提交过来的数据,只需要找request对象就可以了,要想客户机输出数据,只需要找response即可。


response只是一个对象名称,HttpServletResponse类


Student  xiaoming=new Student();   类名: Student       对象名:xiaoming


重定向:重新制定访问的方向

作用:用于从一个Servlet去开启另一个Servlet


重定向:

重定向属于浏览器跳转,不是服务器自己跳转    超链接是一样的

重定向跳转页面浏览器地址会发生变化

重定向为两次请求

an重定向可以访问不同服务器的页面跳转

package com.Servlet;
import java.awt.image.RescaleOp;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class Servlet1
 */
@WebServlet("/Servlet1")
public class Servlet1 extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Servlet1() {
        super();
        // TODO Auto-generated constructor stub
    }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // response  回复  当浏览器根据地址发送请求servlet.servlet
    //使用response对象回复对象
    //设置servlet发送的数据支撑HTML格式
    response.setContentType("text/html");
    //设置发送servlet 浏览html格式 utf-8
    response.setCharacterEncoding("UTF-8");
    //response  回复  内容/数据/消息
    String info="hellow world java";
    String info1="<h1>你好,倒计时servlet<span style='color:red'> java jsp</span></h1>";
    //使用response获得输出
    OutputStream  os =response.getOutputStream();
    os.write(info.getBytes());
    os.write(info1.getBytes());
  }
  /*
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   * 
   */
  }
package com.Servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class Servlet2
 */
@WebServlet("/Servlet2")
public class Servlet2 extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Servlet2() {
        super();
        // 
    }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    //设置servlet发送的数据支撑HTML格式
    response.setContentType("text/html");
    //设置发送servlet 浏览html格式 utf-8
    response.setCharacterEncoding("UTF-8");
    String info="abc";
    String info1="20软件三班";
    String info2="你好,<div style='color:red;background-Color:green'> <h1 style='color:red;background-Color:blue'>"
        + "java jsp</h1>"
        +"<ul><li>1111</li><br><li>2111</li><br><li>3111</li><br></ul>"
        +"<ol><li>1111</li><br><li>2111</li><br><li>3111</li><br></ol>"
        +"<hr>"
        +"<table style='color:red;background-Color:yellow'>课表"
        + "<th>4</th><tr><td>1</td><td>2</td><td>3<td/><tr/>"
        +"<th>2</th>4<tr><td>5</td><td>6</td><td>7<td/><tr/>"
        + "</table>"
        +"<hr>"
        +"<hr>"
        +"<h1>hellow world see you </h1>"
        + "</div>";
    //将数据写出的
    PrintWriter pw=response.getWriter();
    pw.print(info);
    pw.print(info1);
    pw.print(info2);
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doGet(request, response);
  }
}
package com.Servlet;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class Servlet3
 */
@WebServlet("/Servlet3")
public class Servlet3 extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
      * 图片的下载
     */
    public Servlet3() {
        super();
        // TODO Auto-generated constructor stub
    }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // 使用对象完成图片的下载
    //设置servlet发送的数据支撑HTML格式
    response.setContentType("text/html");
        //设置发送servlet 浏览html格式 utf-8
    response.setCharacterEncoding("UTF-8");
    //设置响应头
    response.setHeader("content-disposition", "attachment;filenname=flower.jpg");
    ServletContext sa=getServletContext();
    String path=sa.getRealPath("/imges/yu.png");
    InputStream is =new FileInputStream(path);
    byte [] bytes =new byte[1024];
    int count=-1;
    OutputStream os=response.getOutputStream();
    while((count=is.read(bytes))!=-1) {
      os.write(bytes,0,count);
    }
    //response.getWriter().append("Served at: ").append(request.getContextPath());
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doGet(request, response);
  }
}
package com.Servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.util.Random;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class Servlet4
 */
@WebServlet("/Servlet6")
public class Servlet4 extends HttpServlet {
  private static final long serialVersionUID = 1L;
  /**
   * @see HttpServlet#HttpServlet()
   */
  public Servlet4() {
    super();
    System.out.println("Servlet4正在运行中");
    // 创建码
  }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // 生成数字,随机数
    //100000 -1000000
    //[0,1]*900000=[0,900000]+100000
    response.setCharacterEncoding("UTF-8");
    response.setContentType("text/html");
    response.setHeader("refresh", "5");
    //设置要求浏览器 
    /* response.sendRedirect("Servlet1"); */
    int i=(int)(Math.random()*900000+100000);
    int a=(int)(Math.random()*9000+1000);
    int c=(int)(Math.random()*900+100);
    System.out.println("@@@@"+(new Random().nextInt(900000)+100000));
    /*
     * 设置随机
     */
    System.out.println(new Random().nextInt(100));
    System.out.println(Math.random());
    PrintWriter  pw =response.getWriter();
    pw.print("你的支付宝到账1000万元,需要的码号为:<h1 style='color:red ;background-color:green'>"+i+"</h1>,打死也不说  \"<hr>\";");
    pw.print("你的QQ到账1000万元,需要的码号为:<h2 style='color:red ;background-color:green'>"+c+"</h2>,打死也不说   \"<hr>\";");
    pw.print("你的微信到账1000万元,需要的码号为:<span style='color:green'>"+a+"</span>,打死也不说"); 
    pw.print("你的手机支付宝到账1000万<span style='color :red'>"+i+"</span>");
  }
    /*response.sendRedirect("Servlet1");
     try { Thread.sleep(5000);
     Connection conn =  Time.time();
      } catch (Exception e) 
      { 
      e.printStackTrace();
       response.sendRedirect("Servlet1"); 
      } 
  }
*/
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
   *      response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    // TODO Auto-generated method stub
    doGet(request, response);
  }
}
package com.Servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class Servlet5
 */
@WebServlet("/Servlet5")
public class Servlet5 extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Servlet5() {
        super();
        // TODO Auto-generated constructor stub
    }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  //当浏览器访问servlet5时刻,servlet5回复消息访问servlet1
    System.out.println("servlet5回复消息访问servlet1");
    response.sendRedirect("Servlet1");
  }
    /*
   * // TODO Auto-generated method stub
   * response.getWriter().append("Served at: ").append(request.getContextPath());
   * }
   */
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doGet(request, response);
  }
}
package com.Servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.util.Random;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Servlet implementation class Servlet4
 */
@WebServlet("/Servlet6")
public class Servlet6 extends HttpServlet {
  private static final long serialVersionUID = 1L;
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Servlet6() {
        super();
        System.out.println("Servlet6正在运行中");
        // 创建码
    }
  /**
   * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // 生成数字,随机数
    //100000 -1000000
    //[0,1]*900000=[0,900000]+100000
    response.setCharacterEncoding("UTF-8");
    response.setContentType("text/html");
    response.setHeader("refresh", "5");
    //设置要求浏览器 
    /* response.sendRedirect("Servlet1"); */
    int i=(int)(Math.random()*900000+100000);
    int a=(int)(Math.random()*9000+1000);
    int c=(int)(Math.random()*900+100);
    System.out.println("@@@@"+(new Random().nextInt(900000)+100000));
    /*
     * 设置随机
     */
    System.out.println(new Random().nextInt(100));
    System.out.println(Math.random());
    PrintWriter  pw =response.getWriter();
    pw.print("你的支付宝到账1000万元,需要的码号为:<h1 style='color:red ;background-color:green'>"+i+"</h1>,打死也不说  \"<hr>\";");
    pw.print("你的QQ到账1000万元,需要的码号为:<h2 style='color:red ;background-color:green'>"+c+"</h2>,打死也不说   \"<hr>\";");
    pw.print("你的微信到账1000万元,需要的码号为:<span style='color:green'>"+a+"</span>,打死也不说"); 
    pw.print("你的手机支付宝到账1000万<span style='color :red'>"+i+"</span>");
    response.sendRedirect("Servlet1");
     try { Thread.sleep(5000);
     Connection conn =  Time.time();
      } catch (Exception e) 
      { 
      e.printStackTrace();
      /* response.sendRedirect("Servlet1"); */
      } 
  }
  /**
   * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
   */
  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doGet(request, response);
  }
}
package com.Servlet;
import java.sql.Connection;
public class Time {
  public static int time=60*60*60;
  static Connection time() {
    while (time>0) {
      time--;
      try {
        Thread.sleep(1000);
        int hh=time/1/1%1;
        int mm=time/60%1;
        int ss=time%6;
        if(hh==0 &&mm==0 && ss==0) {
          break;
        }
        System.out.println("小时"+hh+"Сʱ"+mm+"分钟"+ss+"秒");
      } catch (InterruptedException e) {
        // TODO: handle exception
    }finally {
      System.out.println("正在跳转页面哦 Servlect1");
    }
    }
    return null;
  }
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    time();
  }
}

运行结果

总结:response对象的作用

图片,音频,文件的下载

对浏览器的访问

随机码的获取

servlet的跳转

HttpServlet

HttpRequest的有关方法,获取HTTP请求信息;

HttpRequest的有关方法,获取HTTP请求信息;

// 生成数字,随机数

//100000 -1000000

//[0,1]*900000=[0,900000]+100000

response.setCharacterEncoding("UTF-8");

response.setContentType("text/html");

//设置要求浏览器

response.setHeader("refresh", "10");

//response 重定向 重新指定访问方向

从一个servlet 去 开启 新的servlet

重定向:属于浏览器的跳转.超链接

<a href=""></a>

浏览地址发生改变

重定向为二次请求。

重定向可以访问不同服务器的跳转。

相关文章
|
5月前
|
安全 Java
JSP中的隐式对象和四种会话作用域
JSP中的隐式对象和四种会话作用域
61 0
|
9月前
|
存储 前端开发 Java
JSP 域对象详细讲解
JSP 域对象详细讲解
57 0
|
10月前
|
Java
欢迎来到Jsp编程课时六——EL表达式(JSP第十五课时)
欢迎来到Jsp编程课时六——EL表达式(JSP第十五课时)
81 0
|
10月前
|
Java
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(二)
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(二)
85 0
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(二)
|
10月前
|
Java 存储
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(一)
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(一)
38 0
欢迎来到Jsp编程课时四——内置对象 中四大作用域。(一)
|
6月前
|
Java
JSP中9个隐含对象
JSP中9个隐含对象
|
9月前
|
Java
JSP四大作用域和九种隐式对象
JSP四大作用域和九种隐式对象
56 1
|
10月前
|
前端开发 JavaScript Java
欢迎来到Jsp编程课时十——Servlect+Jsp基础回顾。(三)
欢迎来到Jsp编程课时十——Servlect+Jsp基础回顾。(三)
97 0
|
10月前
|
Java
欢迎来到Jsp编程课时十——Servlect+Jsp基础回顾。(二)
欢迎来到Jsp编程课时十——Servlect+Jsp基础回顾。(二)
49 0
|
10月前
|
Java
欢迎来到Jsp编程课时十——Servlect+Jsp基础回顾。(一)
欢迎来到Jsp编程课时十——Servlect+Jsp基础回顾。(一)
35 0