Java GZip資料壓縮傳輸到前台__資料壓縮

來源:互聯網
上載者:User

功能:利用sevrlet吧資料壓縮在傳輸到前台

package cn.hncu.img;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.OutputStream;import java.io.PrintWriter;import java.util.zip.GZIPOutputStream;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class GZipServlet extends HttpServlet {    public void doGet(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {        doPost(request, response);    }    /**     * The doPost method of the servlet. <br>     *     * This method is called when a form has its tag value method equals to post.     *      * @param request the request send by the client to the server     * @param response the response send by the server to the client     * @throws ServletException if an error occurred     * @throws IOException if an error occurred     */    public void doPost(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {        //把位元組數組str中的資料 壓縮到  bos記憶體流當中        String str="sssdadasdasdassssdadasdasda" +                "ssssdadasdasdassssdadasdasdasss" +                "sdadasdasdassssdadasdasdassssdadasdasdas";        byte[] buf=str.getBytes();        System.out.println("buf-length:"+buf.length);        ByteArrayOutputStream bos=new ByteArrayOutputStream();        GZIPOutputStream gout=new GZIPOutputStream(bos);        gout.write(buf);        gout.close();        //從記憶體流array中把壓縮後的資料拿出來        byte dest[]=bos.toByteArray();        System.out.println("des-length:"+dest.length);        response.setHeader("Content-Encoding", "gzip");//告訴瀏覽器,當前發送的是gzip格式的內容        response.setContentType("text/html");        OutputStream out=response.getOutputStream();        //out.write(src);        out.write(dest);        out.flush();        out.close();    }}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.