FileReceiveServlet.java 1.72 KB
Newer Older
peterchu committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
package com.yutu.base.utils;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.UUID;

import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.log4j.Logger;

public class FileReceiveServlet extends HttpServlet{
    /**
     * Logger for this class
     */
    private static final Logger logger = Logger.getLogger(FileReceiveServlet.class);
    private static final long serialVersionUID = 1L;

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        fileReceive(req,resp);
    }

    public void fileReceive(HttpServletRequest req, HttpServletResponse resp) {
        logger.info("接收文件+++++++++++++++++++");
        try {
            String fileName = "d:/airpxml/"+UUID.randomUUID().toString()+".zip";


            ServletInputStream in = req.getInputStream();
            File f = new File(fileName);
            FileOutputStream fos = new FileOutputStream(f);
            byte[] b = new byte[1024];
            int n=0;
            while((n=in.read(b))!=-1){
                System.out.println(n);
                fos.write(b,0,n);
            }


            fos.close();
            in.close();
        } catch (Exception e) {
            logger.info("接收失败+++++++++++++++++"+e.getMessage());
            e.printStackTrace();
        }

    }


}