MultipartFile类详解

戚薇 Java经验 发布时间:2023-03-31 22:18:20 阅读数:5646 1
下文笔者将详细讲述MultipartFile类的详解说明,如下所示

MultipartFile类简介

MultipartFile类是:
   org.springframework.web.mutipart包下的一个类
这个类是Spring框架中的文件类,常用于接收表单提交文件上传参数

MultipartFile详解

1.MultipartFile可接收使用多种请求方式来进行上传文件的内容 

2.MultipartFile中的文件内容可以存储到内存中或存储在磁盘的临时位置上

3.用户都可以自由地拷贝文件内容到session存储中或以一种永久存储的形式进行存储

4.MultipartFile请求结束后,存储就会清除掉

MultipartFile常见方法

getInputStream()方法

将接收文件信息转换为输入流

getName方法

    getName方法获取约定的文件名
    在SpringBoot后台中则是通过@Param(“uploadFile”) 注解定义的内容
     返回的name值不会为null或空
     
    当使用MultipartFile来接收文件
     则@Param(“uploadFile”)定义的接收文件的名称,这个注解必须添加
	  如果未加入这个注解,则无法接收文件

getOriginalFileName方法

    getOriginalFileName方法获取的是文件的完整名称,包括文件名称+文件拓展名。

getContentType方法

    getContentType方法获取的是文件的类型,注意是文件的类型,不是文件的拓展名。

isEmpty方法

    isEmpty方法用来判断传入的文件是否为空,如果为空则表示没有传入任何文件。

getSize方法

    getSize方法用来获取文件的大小,单位是字节。

getBytes方法

    getBytes方法用来将文件转换成一种字节数组的方式进行传输,会抛出IOException异常。

getInputStream方法

    getInputStream方法用来将文件转换成输入流的形式来传输文件,会抛出IOException异常。

transferTo方法

    transferTo方法用来将接收文件传输到给定目标路径,会抛出IOException、IllegalStateException异常。该方法在实际项目开发中使用较少。

MultipartFile使用注意事项

  使用MultipartFile作为参数传递的时候
    可将MultipartFile声明为一个数组
     此时可支持多文件传输

MultipartFile示例

public String uploadLaboratoryData(@RequestParam("file") MultipartFile file) throws ServiceException {

       //getOriginalFileName方法获取的是文件的完整名称,包括文件名称+文件拓展名
       
        String ext = FilenameUtils.getExtension(file.getOriginalFilename());
        String uuid = GeneratorUtil.genFileName();
    try {
    
    //storageBizService.upload()方法是阿里云oss存储对象方法的存储体封装层:上传文化后得到文件在阿里云oss上存储的路径
    
        String url = storageBizService.upload("la/" + uuid + "." + ext, file.getInputStream(), file.getSize(), 
    }catch (IOException | SQLException | ParseException e) {
        e.printStackTrace();
    }
    return url;
}
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202303/16802723306181.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者