SSM
上传文件
前台代码:
1.上传界面:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200116101758988.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NvbVlDRA==,size_16,color_FFFFFF,t_70)
2.代码示例:
2.1 弹出框代码
<el-form-item label="头像" prop="imgUrl">
<el-upload
ref="upload"
class="upload-demo"
action="http://localhost:8088/file/upload"
:headers="myHeaders"
:auto-upload="false"
list-type="picture">
<el-button size="small" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
</el-upload>
</el-form-item>
2.2
data() {
return {
myHeaders: {"X-TOKEN": ""},
.......
}
},
2.3 手动上传
submit(){
this.addLoading = true;
this.$refs.upload.submit();
},
2.4 绑定sessionId
mounted() {
this.userList()
this.myHeaders["X-TOKEN"] = sessionStorage.getItem('sessionId');
alert(sessionStorage.getItem('sessionId'));
}
后台代码:
1.配置上传解析器
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="10485760"/>
</bean>
2.控制层代码
@Controller
@RequestMapping("/file")
@CrossOrigin
public class FileController {
@RequestMapping(value = "/upload",method = RequestMethod.POST)
@ResponseBody
public String upload(MultipartFile file) throws IOException {
System.out.println("11111111111111111111111111111111111111");
String originalFilename = file.getOriginalFilename();
String extension = FilenameUtils.getExtension(originalFilename);
String fileName = System.currentTimeMillis() + "." + extension;
FileOutputStream fileOutputStream = new FileOutputStream(new File("上传文件的存放地址", fileName));
IOUtils.copy(file.getInputStream(),fileOutputStream);
return "/upload/"+fileName;
}
}