springboot文件上传到本地电脑,项目目录,保存到数据库
Posted 蜜桃婷婷酱
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot文件上传到本地电脑,项目目录,保存到数据库相关的知识,希望对你有一定的参考价值。
文件上传三大要素
1.表单提交方法用post
2.有一个可以选择文件的文本框
3.表单属性enctype="multipart/form-data"必须要有
1.上传页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<form action="/upload" enctype="multipart/form-data" method="POST">
<input type="file" name="file">
<input type="submit" value="提交">
</form>
</body>
</html>
2.pom引入jar
<!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload 文件上传需要的包-->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.3</version>
</dependency>
3.创建文件上传controller以及方法
package com.wyh.controller;
import com.wyh.unit.UUIDUtil;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.IOException;
/**
* @Author 魏一鹤
* @Description 文件上传 可以上传到本地电脑,项目,保存到数据库
* @Date 14:47 2021/7/13
* @Param
* @return
**/
@Controller
public class UploadController {
@RequestMapping("/upload")
public String fileUpload(MultipartFile file, Model model, HttpServletRequest request) {
if (file.isEmpty()) {
System.out.println("文件为空");
}
String fileName = file.getOriginalFilename(); // 文件名
String suffixName = fileName.substring(fileName.lastIndexOf(".")); // 后缀名
String filePath = "D:\\\\Tools\\\\upload\\\\"; // 上传后的路径
fileName = UUIDUtil.generateUUID() + suffixName; // 新文件名
File dest = new File(filePath + fileName);
if (!dest.getParentFile().exists()) {
dest.getParentFile().mkdirs();
}
try {
file.transferTo(dest);
} catch (IOException e) {
e.printStackTrace();
}
model.addAttribute("image",dest);
return "success";
}
}
4.查看效果
以上是关于springboot文件上传到本地电脑,项目目录,保存到数据库的主要内容,如果未能解决你的问题,请参考以下文章