您的位置:首页 > Web前端

servlet 简单案例!实现图片下载功能

2013-11-01 14:57 387 查看
[align=left] [/align]

[align=left]/*[/align]

*Servlet实现将图片写入到网页和实现图片下载的功能


[align=left]*[/align]

[align=left]*/[/align]

[align=left] [/align]

[align=left]package lipf.java.servlet;  [/align]

[align=left]  [/align]

[align=left]import java.io.File;  [/align]

[align=left]  [/align]

[align=left]public class ShowImage extends HttpServlet {  [/align]

[align=left]  [/align]

[align=left]    /** [/align]

[align=left]     * Constructor of the object. [/align]

[align=left]     */  [/align]

[align=left]    public ShowImage() {  [/align]

[align=left]        super();  [/align]

[align=left]    }  [/align]

[align=left]  [/align]

[align=left]    /** [/align]

[align=left]     * Destruction of the servlet. <br> [/align]

[align=left]     */  [/align]

[align=left]    public void destroy() {  [/align]

[align=left]        super.destroy(); // Just puts "destroy" string in log  [/align]

[align=left]        // Put your code here  [/align]

[align=left]    }  [/align]

[align=left]  [/align]

[align=left]    public void doGet(HttpServletRequest request, HttpServletResponse response)  [/align]

[align=left]            throws ServletException, IOException {  [/align]

[align=left]  [/align]

[align=left]//      showImage(request, response);  [/align]

[align=left]        downlodeImage(request, response);  [/align]

[align=left]    }  [/align]

[align=left]  [/align]

[align=left]    public void showImage(HttpServletRequest request,  [/align]

[align=left]            HttpServletResponse response) throws ServletException, IOException {  [/align]

[align=left]        // 读取方式  [/align]

[align=left]        // response.setContentType("application/zip");  [/align]

[align=left]        response.setContentType("image/jpeg");  [/align]

[align=left]        // 获取图片绝对路径  [/align]

[align=left]        String path = this.getServletContext().getRealPath("/");  [/align]

[align=left]        File file = new File(path + "/images/123.JPG");  [/align]

[align=left]        // 创建文件输入流  [/align]

[align=left]        FileInputStream is = new FileInputStream(file);  [/align]

[align=left]        // 响应输出流  [/align]

[align=left]        ServletOutputStream out = response.getOutputStream();  [/align]

[align=left]        // 创建缓冲区  [/align]

[align=left]        byte[] buffer = new byte[1024];  [/align]

[align=left]        int len = 0;  [/align]

[align=left]        while ((len = is.read(buffer)) != -1) {  [/align]

[align=left]            out.write(buffer, 0, len);  [/align]

[align=left]        }  [/align]

[align=left]        is.close();  [/align]

[align=left]        out.flush();  [/align]

[align=left]        out.close();  [/align]

[align=left]  [/align]

[align=left]    }  [/align]

[align=left]  [/align]

[align=left]    public void downlodeImage(HttpServletRequest request,  [/align]

[align=left]            HttpServletResponse response) throws ServletException, IOException {  [/align]

[align=left]          [/align]

[align=left]        // 获取图片绝对路径  [/align]

[align=left]        String path = this.getServletContext().getRealPath("/");  [/align]

[align=left]        File file = new File(path + "/images/123.JPG");  [/align]

[align=left]        //设置头信息,内容处理的方式,attachment以附件的形式打开,就是进行下载,并设置下载文件的命名  [/align]

[align=left]        response.setHeader("Content-Disposition","attachment;filename="+file.getName());  [/align]

[align=left]        // 创建文件输入流  [/align]

[align=left]        FileInputStream is = new FileInputStream(file);  [/align]

[align=left]        // 响应输出流  [/align]

[align=left]        ServletOutputStream out = response.getOutputStream();  [/align]

[align=left]        // 创建缓冲区  [/align]

[align=left]        byte[] buffer = new byte[1024];  [/align]

[align=left]        int len = 0;  [/align]

[align=left]        while ((len = is.read(buffer)) != -1) {  [/align]

[align=left]            out.write(buffer, 0, len);  [/align]

[align=left]        }  [/align]

[align=left]        is.close();  [/align]

[align=left]        out.flush();  [/align]

[align=left]        out.close();  [/align]

[align=left]  [/align]

[align=left]    }  [/align]

[align=left]  [/align]

[align=left]    public void doPost(HttpServletRequest request, HttpServletResponse response)  [/align]

[align=left]            throws ServletException, IOException {  [/align]

[align=left]  [/align]

[align=left]        this.doGet(request, response);  [/align]

[align=left]    }  [/align]

[align=left]  [/align]

[align=left]}  [/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  csdn buffer servlet java
相关文章推荐