zl程序教程

您现在的位置是:首页 >  Java

当前栏目

SpringMVC 文件上传简单模板

2023-02-18 16:35:56 时间

加入新的依赖

  <dependency>
      <groupId>commons-fileupload</groupId>
      <artifactId>commons-fileupload</artifactId>
      <version>1.4</version>
  </dependency>

springmvc.xml中配置一个多媒体解析器

<!-- 这个id不可缺少,并且id的值一定是multipartResolver-->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <!--value:这里的单位是字节B,maxUploadSize:设置文件最大大小-->
    <property name="maxUploadSize" value="5000000"/>
</bean>

MultipartFile 类

在方法中接受参数上加上 MultipartFile 类请看代码中的↓

import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.IOException;
import java.util.UUID;

@RestController
//这里我不走视图解析器
@RequestMapping("/up")
public class UpFileController {

    @PostMapping()		//↓↓↓↓↓↓↓↓↓↓
    public String upFil(MultipartFile file) throws IOException {
    	//获取上传文件名称
        String filename = file.getOriginalFilename();
        System.out.println("文件名称::"+filename);

        //临时储存地址
        String mod = "D:\\csnds\\Uplay\\"+UUID.randomUUID().toString()+filename;
        System.out.println("存储地址::"+mod);
        //存储本地
        file.transferTo(new File(mod));

//上传成功,在网页输出一句话
        return "上传成功!";
    }
}

简单的上传前端代码

<html>
<head>
    <title>文件上传</title>
</head>
<body>
<!--上传页面-->
<form action="${pageContext.request.contextPath}/up" method="post" enctype="multipart/form-data">
    <input type="file" name="file">
    <button>上传</button>
</form>

</body>
</html>