精华内容
下载资源
问答
  • 解决chrome浏览器中点击链接,如果是浏览器可识别的文件类型,浏览器会自动打开而不是弹出下载框的方案
  • java直接下载网络URL图片给用户浏览器 通过请求网络URL图片直接返回给用户 浏览器直接下载 FileDownloadController package top.wintp.demo.demo.controller; import org.springframework.http.HttpHeaders; ...

    java直接下载网络URL图片给用户浏览器

    通过请求网络URL图片直接返回给用户 浏览器直接下载

    FileDownloadController

    package top.wintp.demo.demo.controller;
    
    import org.springframework.http.HttpHeaders;
    import org.springframework.http.HttpStatus;
    import org.springframework.http.MediaType;
    import org.springframework.http.ResponseEntity;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    import java.io.ByteArrayOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    
    /**
     * 推流给用户
     *
     * @author: pyfysf
     * <p>
     * @qq: 337081267
     * <p>
     * @CSDN: http://blog.csdn.net/pyfysf
     * <p>
     * @blog: http://wintp.top
     * <p>
     * @email: pyfysf@163.com
     * <p>
     * @time: 2019/12/6
     */
    @Controller
    public class FileDownloadController {
    
        /**
         * 下载文件
         *
         * @return
         */
        @RequestMapping("/downloadFileByIs")
        public ResponseEntity<byte[]> downloadFile() throws IOException {
            String targetUrl = "http://img.wintp.top/zblog/meinv.png";
            HttpStatus status = HttpStatus.CREATED;
    
            HttpHeaders headers = new HttpHeaders();
            headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
            headers.setContentDispositionFormData("attachment", System.currentTimeMillis() + ".png");
    
            InputStream is = HttpUtils.dowloadFile(targetUrl);
    
            byte[] bytes = readInputStream(is);
    
            return new ResponseEntity<byte[]>(bytes, headers, status);
    
        }
    
    
        /**
         * 读取字节输入流内容
         *
         * @param is
         * @return
         */
        private byte[] readInputStream(InputStream is) {
            ByteArrayOutputStream writer = new ByteArrayOutputStream();
            byte[] buff = new byte[1024 * 2];
            int len = 0;
            try {
                while ((len = is.read(buff)) != -1) {
                    writer.write(buff, 0, len);
                }
                is.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return writer.toByteArray();
        }
    
    
    }
    
    

    HttpUtils

    package top.wintp.demo.demo.controller;
    
    import java.io.IOException;
    import java.io.InputStream;
    import java.net.MalformedURLException;
    import java.net.URL;
    import java.net.URLConnection;
    
    public class HttpUtils {
        /**
         * 模拟 http post请求
         *
         * @param httpUrl
         * @return
         * @throws IOException
         */
        public static InputStream dowloadFile(String httpUrl) throws IOException {
            URL url = null;
            try {
                url = new URL(httpUrl);
            } catch (MalformedURLException e1) {
                e1.printStackTrace();
            }
    
            URLConnection conn = url.openConnection();
            InputStream inStream = conn.getInputStream();
            return inStream;
        }
    
    
    }
    
    

    上述代码运行在SpringBoot的环境中

    展开全文
  • 主要为大家详细介绍了Java后台实现浏览器一键导出下载zip压缩包,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • Java数组倒置 简单 Java图片加水印,支持旋转和透明度设置 摘要:Java源码,文件操作,图片水印 util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印...
  • java根据URL调用浏览器下载图片 前端 // An highlighted block var url = '图片URL'; window.location.href = url; 后端 ServletOutputStream out = null; InputStream inputStream = null; try { //文件名 ...

    java根据URL调用浏览器下载图片

    前端

    // An highlighted block
    var url = '图片URL';
    window.location.href = url;
    

    后端

     ServletOutputStream out = null;
            InputStream inputStream = null;
    
            try {
                //文件名
                String pdfName = "name.jpg";
                // 获取外部文件流
                URL url = new URL(图片URL);
                HttpURLConnection conn = (HttpURLConnection) url.openConnection();
                conn.setConnectTimeout(3 * 1000);
                //防止屏蔽程序抓取而返回403错误
                conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
                inputStream = conn.getInputStream();
                /**
                 * 输出文件到浏览器
                 */
                int len = 0;
                // 输出 下载的响应头,如果下载的文件是中文名,文件名需要经过url编码
                response.setContentType("application/x-download");
                response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(pdfName, "UTF-8"));
                response.setHeader("Cache-Control", "no-cache");
                out = response.getOutputStream();
                byte[] buffer = new byte[1024];
                while ((len = inputStream.read(buffer)) > 0) {
                    out.write(buffer, 0, len);
                }
                out.flush();
            } catch (Exception e) {
    
                e.printStackTrace();
            } finally {
                if (inputStream != null) {
                    try {
                        inputStream.close();
                    } catch (Exception e) {
                    }
                }
                if (out != null) {
                    try {
                        out.close();
                    } catch (Exception e) {
                    }
                }
            }
    
    展开全文
  • java读取本地图片浏览器中显示

    千次阅读 2019-09-26 23:59:15
    try { //获取图片存放路径 String imgPath = "D:\\wulin.jpg"; ips = new FileInputStream(new File(imgPath)); response.setContentType("image/png"); out = response.getOutputStream(); //读取文件流 int len =...
     @RequestMapping(value = "/tupian", method = RequestMethod.GET)
      public void IoReadImage(HttpServletRequest request, HttpServletResponse response) throws IOException {
        ServletOutputStream out = null;
        FileInputStream ips = null;
        try {
          //获取图片存放路径
          String imgPath = "D:\\wulin.jpg";
          ips = new FileInputStream(new File(imgPath));
          response.setContentType("image/png");
          out = response.getOutputStream();
          //读取文件流
          int len = 0;
          byte[] buffer = new byte[1024 * 10];
          while ((len = ips.read(buffer)) != -1) {
            out.write(buffer, 0, len);
          }
          out.flush();
        } catch (Exception e) {
          e.printStackTrace();
        } finally {
          out.close();
          ips.close();
        }
      }

     

    展开全文
  • Java web的方式显示图片浏览器

    千次阅读 2021-01-12 12:03:06
    Java web的方式显示图片浏览器 请求例子:http://localhost:8080/image?image=图片名称.jpeg 示例代码: 一:允许Spring Boot使用Java web 在spring boot启动器中添加@ServletComponentScan注解 import org....
     
    

    以Java web的方式显示图片到浏览器
    请求例子:http://localhost:8080/image?image=图片名称.jpeg

    示例代码:

    一:允许Spring Boot使用Java web

    在spring boot启动器中添加@ServletComponentScan注解

    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.boot.web.servlet.ServletComponentScan;
    
    @SpringBootApplication
    @ServletComponentScan //这里
    public class DemoApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(DemoApplication.class, args);
        }
    
    }
    

    二:图片下载

    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.IOException;
    
    import javax.imageio.ImageIO;
    import javax.servlet.ServletException;
    import javax.servlet.ServletOutputStream;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    @WebServlet("/image")
    public class ImageShow extends HttpServlet {
        protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            try {
                String image=request.getParameter("image");
                System.out.println(image);
                File file;
                BufferedImage im;
                try {
                    file = new File("image/" + image);
                    im= ImageIO.read(file);
                } catch (Exception e) {
                    //没有找到图片则返回固定的图片
                    file = new File("image/1.jpg");
                    im=ImageIO.read(file);
                }
                response.setContentType("image/jpeg");
                ServletOutputStream sos=response.getOutputStream();
                ImageIO.write(im, "jpeg", sos);
            } catch (Exception e) {
            }
        }
    }
    

    运行结果:

    在这里插入图片描述

    展开全文
  • 默认情况下,浏览器设定是inline形式,对于服务器返回的文件,能打开就打开,不能打开就自动下载...但是有些时候,实现下载功能,后端返回的是图片浏览器却直接把图片打开了?怎么回事? 这就是Content-Dispositio...
  • java 后台返回文件流到浏览器

    千次阅读 2018-09-14 20:00:00
    @ApiImplicitParam(name = "url", value = "图片地址", required = true, paramType = "query", defaultValue = "\\20180912\\7cd2e1a3-a087-4e25-aac8-2bdf8e274c6f.png"), }) @RequestMapping(value = "/...
  • springBoot优雅返回图片/网页到浏览器

    千次阅读 2019-05-17 15:57:00
    一、普通spring mvc返回图片或网页到浏览器 @Controller @RequestMapping(value = "/image") public class ImageController { @RequestMapping(value = "/get") @ResponseBody public void getImage...
  • ![图片说明](https://img-ask.csdn.net/upload/201710/07/1507346819_471654.png) 其他浏览器直接跳到一个空页面显示json格式数据,怎么办,后台用的springboot
  • Java 输出 Base64 图片数据到浏览器 @GetMapping("/thumbnail") public void getThumbnail(HttpServletResponse response) { String thumbnail = "Base64数据"; if (StringUtils.isNotBlank(thumbnail)) { ...
  • Java面试题大全(2020版)

    万次阅读 多人点赞 2019-11-26 11:59:06
    发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全,希望对大家有帮助哈~ 本套Java面试题大全,全的不能再全,哈哈~ 一、Java 基础 1. JDK 和 JRE 有什么区别? JDK:Java ...
  • 因为一些原因,图片访问需要在项目中通过controller接口的形式访问,做这个的时候遇到一个问题:浏览器单独访问接口时会出现下载图片的现象,将接口链接放到img标签的src中就能直接显示。这对用户来讲是个不好的体验...
  • 图片显示(流形式):如果你想在浏览器中显示图片,而图片不是一个静态文件(没有url地址) 那我们应该怎么做呢? 分析: 浏览器获得文件是通过http协议的, 所以只要我设置好请求(request)返回的响应(response...
  • Java:导出word,浏览器下载

    千次阅读 2018-10-22 15:48:39
    它的类库尤其与java Servlet有很好的合。使用iText与PDF能够使你正确的控制Servlet的输出。"; Paragraph context = new Paragraph(contextString); // 正文格式左对齐 context.setAlignment(Element.ALIGN_LEFT...
  • JAVA上百实例源码以及开源项目

    千次下载 热门讨论 2016-01-03 17:37:40
     util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码...
  • java模拟浏览器下载图片

    千次阅读 2015-12-22 09:12:26
    * 抓取网上的图片 * @param imgSrc * @param filePath */ public static void downloadImgByNet(String imgSrc,String filePath,String fileName){ try{ URL url = new URL(imgSrc); URLConnection conn = ...
  • java实现通过url实现浏览器下载pdf文件 // 下载pdf文件工具类 public static void toDownload(HttpServletRequest request, HttpServletResponse response, Map<String, Object> map) { ServletOutputStream ...
  • HTTP协议详解及Java模拟浏览器请求

    千次阅读 2018-09-19 18:07:10
    HTTP(Hypertext transfer protocol)超文本传输协议,通过浏览器和服务器进行数据交互,进行超文本(文本、图片、视频等)传输的规定。也就是说,HTTP协议规定了超文本传输所要遵守的规则。 HTTP是一个应用层协议,...
  • 第五步——下载图片 场景 最近笔者做的项目中,有一个需求: 在系统中生成一个二维码,用户保存下来并分享出去,其他人扫描之后跳到我们的一个活动详情页,查看此活动的内容。 从以上的需求中,可以提炼出以下几...
  • web项目图片来源是本地硬盘,是<img src="/web_mvn/ImageShowServlet" alt="" />src处调用servlet直接返回图片吗?看到有的网站是用一个文件夹uploads存放图片,这是下载硬盘上的图片到服务器文件夹uploads中,图片...
  • 一共分为二十个部分:环境安装之Java、环境安装之IntelliJ IDEA、环境安装之selenium、selenium3浏览器驱动、selenium元素定位、控制浏览器操作、WebDriver常用方法、模拟鼠标操作、模拟键盘操作、获取断言信息、...
  • Java web的方式下载服务器文件到浏览器 请求例子:localhost:8080/downExcel?excel=文件名.xls 示例代码: import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io....
  • java爬虫

    千次阅读 多人点赞 2019-04-12 11:59:12
    这样的爬虫程序, 垂直爬虫 例如: 慢慢网, 笔趣阁 在开发过程中, 大部分开发的都是垂直爬虫, 1.4 爬虫的基本原理 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-s2DZvhH4-1605084008952)...
  • JavaWeb将图片显示在浏览器

    千次阅读 2015-05-29 17:04:59
    用户上传了一张图片图片到服务器后用户得到一个链接,可以将图片显示在浏览器上。 二、实现 假设项目名叫TestProject,文件放在项目根目录下的uploadImages文件夹下。 ①图片名为英文,可直接通过链接打开...
  • Java项目生成Excel并通过浏览器下载

    千次阅读 2018-04-28 14:23:23
    问题:小的文本文件无所谓,但是如果是包含了大量图片的大文件,这种操作会在workbook下入浏览器输出流的时候出现一个瓶颈,不仅本线程会很慢,更会因为占用太多的资源拖累整个应用程序。 (1) 之前的下载...
  • 最近项目需要在浏览器中通过URL预览图片。但发现浏览器始终默认下载,而不是预览。研究了一下,发现了问题: // 设置response的Header,注意这句,如果开启,默认浏览器会进行下载操作,如果注释掉,浏览器会默认...
  • 返回多张图片给前端--base64

    千次阅读 2019-10-28 21:15:01
    再下限于水平有限,多次尝试后端返回图片到前端,没有找到一种最好的方法。 1.可以用本地工程存放图片。每次返回图片在本地工程的路径就可以。 有点:简单易用,可以返回多张图片。 缺点:本地工程越来越臃肿。 2.用...
  • 我的操作步奏: 1、Eclipse里面写个简单的jsp页面,加入CNZZ统计脚本,启动服务器。 2、浏览器访问。...求高手解答,总之,我的目的:java代码模拟浏览器,访问网页;使网页中的统计代码能执行。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 81,742
精华内容 32,696
关键字:

java返回图片给浏览器

java 订阅