@ApiOperation("我的图库界面上传照片")
@PostMapping("/filetoService")
public Result userupimg(@RequestParam("avatar") MultipartFile file, HttpSession session, HttpServletResponse response) throws Exception {
ShopUser shop = (ShopUser) session.getAttribute("shop");
try {
//获取图片原始名称加后缀
String fileName2 = file.getOriginalFilename();
//截取图片路径后缀扩展名
String suffix = fileName2.substring (fileName2.lastIndexOf ("."));
//获取当前时间毫秒值
String fileName = String.valueOf(System.currentTimeMillis());
//将路径和名称毫秒值(防止重复)+文件后缀名拼接
String filePath = "E:/images/"+fileName+suffix;
FileOutputStream fos = new FileOutputStream(filePath);
fos.write(file.getBytes());
fos.close();
//String imgUrl = "E:/images/"+fileName+suffix;
String imgUrl = "http://127.0.0.1/images/"+fileName+suffix;
tuKuService.update_image(shop.getId(),imgUrl);
return Result.success();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
@Configuration
public class WebConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/watch/**").addResourceLocations("file:C://img/");
}
}
@PostMapping("/filetoService")
public Result userupimg(@RequestParam("avatar") MultipartFile file, HttpSession session, HttpServletResponse response) throws Exception {
ShopUser shop = (ShopUser) session.getAttribute("shop");
try {
//获取图片原始名称加后缀
String fileName2 = file.getOriginalFilename();
//截取图片路径后缀扩展名
String suffix = fileName2.substring (fileName2.lastIndexOf ("."));
//获取当前时间毫秒值
String fileName = String.valueOf(System.currentTimeMillis());
//将路径和名称毫秒值(防止重复)+文件后缀名拼接
String filePath = "E:/images/"+fileName+suffix;
FileOutputStream fos = new FileOutputStream(filePath);
fos.write(file.getBytes());
fos.close();
String imgUrl = "E:/images/"+fileName+suffix;
System.out.println(imgUrl);
return Result.success();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
<div style="padding: 200px;">
<!-- 文件选择框 -->
<input type="file" id="file1" />
<!-- 上传文件按钮 -->
<button id="btnUpload">上传</button>
</div>
<script>
$('#btnUpload').on('click', function () {
// 1. 将 jQuery 对象转化为 DOM 对象,并获取选中的文件列表
var files = $('#file1')[0].files
// 2. 判断是否选择了文件
if (files.length <= 0) {
return alert('请选择图片后再上传!')
}
// 向 FormData 中追加文件
var fd = new FormData()
fd.append('avatar', files[0])
$.ajax({
method: 'POST',
url: 'http://127.0.0.1/shopshangpin/filetoService',
data: fd,
// 不修改 Content-Type 属性,使用 FormData 默认的 Content-Type 值
contentType: false,
// 不对 FormData 中的数据进行 url 编码,而是将 FormData 数据原样发送到服务器
processData: false,
xhrFields: {
withCredentials: true
},
success: function (res) {
console.log(res)
}
})
})
</script>