zoukankan      html  css  js  c++  java
  • 第六天-request response4-response实现文件下载.avi--本人测试失败

    package cn.itcast.response;

    import java.io.FileInputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.io.PrintWriter;
    import java.util.Date;

    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 ResponseDemo1
    */
    @WebServlet("/ResponseDemo1")
    public class ResponseDemo1 extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
    * @see HttpServlet#HttpServlet()
    */
    public ResponseDemo1() {
    super();
    // TODO Auto-generated constructor stub
    }

    /**
    * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
    */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    String path = this.getServletContext().getRealPath("/download/abc.jpg");
    String filename =path.substring(path.lastIndexOf("\"+1));
    //response.setHeader("content-type", "text/html;charset=UTF-8");
    response.setHeader("content-disposition", "attachment;filename="+filename);
    InputStream in =null;
    OutputStream out =null;
    try {
    in = new FileInputStream(path);
    int len =0;
    byte buffer[] =new byte[1024];
    out =response.getOutputStream();
    while ((len=in.read(buffer))>0){
    out.write(buffer,0,len);
    }
    } finally {
    // TODO: handle finally clause
    }


    //test1(request, response);
    }

    public void test1(HttpServletRequest request, HttpServletResponse response) throws IOException {
    response.setCharacterEncoding("UTF-8");
    response.setHeader("content-type", "text/html;charset=UTF-8");
    String data="中国";

    //response.setContentType("text/html;charset=UTF-8");
    PrintWriter out= response.getWriter();
    out.write(data);
    response.getWriter().append("Served at: ").append(request.getContextPath()+"fda "+new Date());
    }

    /**
    * @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);
    }

    }

  • 相关阅读:
    C#调用java类、jar包方法
    利用IKVM在C#中调Java程序
    同样版本的jstl,都是jstl1.2版本,有个有问题,另一个没有问题
    Python安装及开发环境配置
    jQuery EasyUI parser 的使用场景
    关于HttpURLConnection.setFollowRedirects
    HttpUrlConnection 的 setDoOutput 与 setDoInput
    【Mybatis】向MySql数据库插入千万记录 单条插入方式,用时 1h16m30s
    [MyBatis]再次向MySql一张表插入一千万条数据 批量插入 用时5m24s
    [MyBatis]向MySql数据库插入一千万条数据 批量插入用时6分 之前时隐时现的异常不见了
  • 原文地址:https://www.cnblogs.com/rogge7/p/6888784.html
Copyright © 2011-2022 走看看