zoukankan      html  css  js  c++  java
  • java接收图片的两种方法

    1、使用http接收IO流

    2、使用接收formdata表单的方式

    controller:

        @PostMapping("savePicByIo")
        public String savePicByIo(HttpServletRequest request) throws Exception{
            System.out.println("图片上传开始");
            String fileName = savePictureService.savePicByIo(request);
            return fileName;
        }
    
        @PostMapping("savePicByFormData")
        public String savePicByFormData(@RequestParam("file")MultipartFile file) throws IOException {
            String fileName = savePictureService.savePicByFormData(file);
            return fileName;
        }

    service:

        public String savePicByIo(HttpServletRequest request) throws IOException {
            // 图片存储路径
            String path = "C:\image\factory";
            // 判断是否有路径
            if (!new File(path).exists()) {
                new File(path).mkdirs();
            }
            ServletInputStream inputStream = request.getInputStream();
            String fileName = UUID.randomUUID().toString().replace("-","") + ".jpg";
            File tempFile = new File(path,fileName);
            if (!tempFile.exists()) {
                OutputStream os = new FileOutputStream(tempFile);
                BufferedOutputStream bos = new BufferedOutputStream(os);
                byte[] buf = new byte[1024];
                int length;
                length = inputStream.read(buf,0,buf.length);
                while (length != -1) {
                    bos.write(buf, 0 , length);
                    length = inputStream.read(buf);
                }
                bos.close();
                os.close();
                inputStream.close();
            }
            return fileName;
        }
    
    
        public String savePicByFormData(MultipartFile file) throws IOException {
    
            // 图片存储路径
            String path = "C:\image\factory";
            // 判断是否有路径
            if (!new File(path).exists()) {
                new File(path).mkdirs();
            }
            String fileName = UUID.randomUUID().toString().replace("-","") + ".jpg";
            File tempFile = new File(path,fileName);
            if (!tempFile.exists()) {
                tempFile.createNewFile();
            }
            file.transferTo(tempFile);
            return fileName;
        }
  • 相关阅读:
    WIN8.1优化
    Iframe跨域嵌入页面自动调整高度的办法
    win8优化
    160多条Windows 7 “运行”命令
    用 C# 代码如何实现让你的电脑关机,重启,注销,锁定,休眠,睡眠
    system32下 exe文件作用
    html高度百分比分配
    Django启程篇
    自适应网页前端设计相关
    crontab定时任务及jar包等问题
  • 原文地址:https://www.cnblogs.com/flypig666/p/12488556.html
Copyright © 2011-2022 走看看