前端VUE的代码实现
<el-upload
class="avatar-uploader"
action="/uploadAvatar" //这个action的值是服务端的路径,其他不用改
:show-file-list="false"
:on-success="handleAvatarSuccess"
:before-upload="beforeAvatarUpload">
<img v-if="imageUrl" :src="imageUrl" class="avatar">
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
后端springboot的代码实现
package com.aqiuo.controller;
import com.aqiuo.entity.dto.Result;
import com.aqiuo.utils.RandomUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpRequest;
import org.springframework.util.ResourceUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.IOException;
import java.util.UUID;
@RestController
@ResponseBody
@Slf4j
public class UploadAvatar {
@RequestMapping(value = "/uploadAvatar",method = {RequestMethod.POST})
public Result imgUpDown(@RequestParam("file") MultipartFile file, HttpServletRequest request) throws IOException {
if(!file.isEmpty()) {
String fileName = file.getOriginalFilename();
String suffixName = fileName.substring(fileName.indexOf("."));
//设置上传文件的保存地址目录
String dirpath=request.getServletContext().getRealPath("/upload");
System.out.println(dirpath);
File parentFilePath=new File(dirpath);
//如果保存文件不存在就先创建目录
if(!parentFilePath.exists()) {
parentFilePath.mkdir();
}
String fileNewName = UUID.randomUUID() + fileName;
File newFile = new File(parentFilePath, fileNewName);
file.transferTo(newFile);
return Result.ok(newFile);
}
return null;
}
}
易错地点:
文件的存储位置一定要明确
运行效果
原文地址:https://blog.csdn.net/m0_62645012/article/details/134578301
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_9144.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。