MultipartFile小知识收集整理

MultipartFile

  • 为org.springframework.web.mutipart包下的一个类
  • 一种可以接收使用多种请求方式来进行上传文件的代表形式
  • 这个文件内容可以存储到内存中或者存储在磁盘的临时位置上。
  • 无论发生哪种情况,用户都可以自由地拷贝文件内容到session存储中,或者以一种永久存储的形式进行存储,如果有需要的话。
  • 这种临时性的存储在请求结束之后将会被清除掉。
public interface MultipartFile extends InputStreamSource {
    String getName();// 如果是用在controller 的参数中,对应参数名,例如在SpringBoot后台中则是通过@Param(“uploadFile”) 

    @Nullable
    String getOriginalFilename();//获取的是文件的完整名称,包括文件名称+文件拓展名。

    @Nullable
    String getContentType();// 获取的是文件的类型,注意是文件的类型,不是文件的拓展名。

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

    long getSize();//用来获取文件的大小,单位是字节。

    byte[] getBytes() throws IOException;// 用来将文件转换成一种字节数组的方式进行传输,会抛出IOException异常

    InputStream getInputStream() throws IOException;//来将文件转换成输入流的形式来传输文件,会抛出IOException异常。

    default Resource getResource() {
        return new MultipartFileResource(this);
    }

    void transferTo(File dest) throws IOException, IllegalStateException;//用来将接收文件传输到给定目标路径,会抛出IOException、IllegalStateException异常。该方法在实际项目开发中使用较少。文件上传主要是用这个方法实现!

    default void transferTo(Path dest) throws IOException, IllegalStateException {
        FileCopyUtils.copy(this.getInputStream(), Files.newOutputStream(dest));
    }
}

你可能感兴趣的:(知识碎片)