vue文件上传和下载_vue上传文件组件

vue文件上传和下载_vue上传文件组件Controller层上传@RequestMapping(“/uplaod”)@ResponseBodypublicRespBeanadd(@RequestParam(“file”)MultipartFilefile){//TODO处理上传的数据StringfileName=file.getOriginalFilename();StringcontentType=file.getContentType();lon

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

文件上传content-type:multipart/form-data

Vue端

多文件上传

let files = new FormData()
for (let i in this.fileList) { 
   
    files.append('files', this.fileList[i].raw)
}

下载

window.open(this.BASE_URL + '/download/' + id)

Controller层

上传

    @RequestMapping("/uplaod")
    @ResponseBody
    public RespBean add(@RequestParam("file") MultipartFile file) { 
   
    //TODO 处理上传的数据
    String fileName = file.getOriginalFilename();
    String contentType = file.getContentType();
    long size = file.getSize();
    
    }

下载

    @GetMapping("/download/{id}")
    @ResponseBody
    public void show(@PathVariable("id") String id, HttpServletResponse response) { 
   
        //TODO 获取需要下载的数据
        String contentType = null;
        String fileName = null;
        byte[] data = null;
        
        try { 
   
            response.setCharacterEncoding("UTF-8");
            response.setHeader("content-type", contentType + "; charset=utf-8");
            response.setContentType(contentType + ";charset=utf-8");
            response.setHeader("Content-Disposition", "attachment; filename=" + java.net.URLEncoder.encode(fileName, "UTF-8"));
            response.getOutputStream().write(data);
            response.getOutputStream().flush();
            response.getOutputStream().close();
        } catch (Exception e) { 
   
            e.printStackTrace();
        }
    }

获取resources目录下文件,部署可用。

@Autowired
ResourceLoader resourceLoader;

File file = resourceLoader.getResource("classpath:apk/ai.apk").getFile();

常见content-type

.apk:application/vnd.android.package-archive
.jpg:image/jpeg
.zip:application/zip
.docx:application/vnd.openxmlformats-officedocument.wordprocessingml.document
.mp4:video/mp4
.pdf:application/pdf
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170641.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pytest的assert_java单元测试断言

    pytest的assert_java单元测试断言前言断言是写自动化测试基本最重要的一步,一个用例没有断言,就失去了自动化测试的意义了。什么是断言呢?简单来讲就是实际结果和期望结果去对比,符合预期那就测试pass,不符合预期那就测试failed

    2022年7月29日
    8
  • Idea激活码最新教程2024.1.3版本,永久有效激活码,亲测可用,记得收藏

    Idea激活码最新教程2024.1.3版本,永久有效激活码,亲测可用,记得收藏Idea 激活码教程永久有效 2024 1 3 激活码教程 Windows 版永久激活 持续更新 Idea 激活码 2024 1 3 成功激活

    2025年5月28日
    2
  • java获取string字符串长度_java判断字符串长度

    java获取string字符串长度_java判断字符串长度网络数据的基本单位总是字节,JavaNIO提供了ByteBuffer作为它的字节容器,但是其过于复杂且繁琐。Netty的ByteBuffer替代品是ByteBuf,一个强大的实现,即解决了JDKAPI的局限性,又为网络应用程序的开发者提供了更好的API。1、ByteBuf的APINetty的数据处理API通过两个组件暴露——abstractclassByteBuf和interface…

    2022年9月16日
    2
  • 安卓7.1精简版下载_asm字节码

    安卓7.1精简版下载_asm字节码ASM 7.1 发布

    2022年4月21日
    221
  • RuntimeException异常

    RuntimeException异常/*Exception中有一个特殊的子类异常RuntimeException(运行时异常)。 *RuntimeException非常特殊,它的的子类也可以直接抛出,不用声明。 *1.如果在函数内容抛出该异常,喊上可以不用声音,编译通过。 *2.如果函数上声明了该异常,调用者可以不用进行处理,编译一样能通过。 *3.之所以不用在函数上声明,因为不需要让调用者处理。 *4

    2022年7月24日
    34
  • Oracle级联查询

    在ORACLE数据库中有一种方法可以实现级联查询select*//要查询的字段fromtable//具有子接点ID与父接点ID的表startwithselfid=id//给定一个

    2021年12月22日
    40

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号