Spring-Boot文件上传
目录
Spring Boot文件上传
5.3.1文件上传
开发Web应用时,文件上传是很常见的一个需求浏览器通过表单形式将文件以流的形式传递给服务器,服务器再对上传的数据解析处理。下面我们通过一个案例讲解如何使用SpringBoot实现文件上传,具体步骤如下。
1.编写文件上传的表单页面
在chapter05项目根路径下的templates 模板引擎文件夹下创建一个用来上传文件的upload.html模板页面,内容如下列代码所示。
<!DOCTYPE html>
<html lang="en"xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content=“text/html; charset=UTF-8”>
<title>动态添加文件上传列表</title>
<link th:href="@{/login/css/bootstrap.min.css}" rel="stylesheet">
<script th:src="@{/login/js/jquery.min.js}"></script>
</head>
<body>
<div th:if="${uploadStatus}" style="color: red" th:text="${uploadStatus}">
上传成功</div>
<form th:action="@{/uploadFile}"method="post" enctype="multipart/form-data">
上传文件: <input type="button"value="添加文件"onclick="add()"/>
<div id-"file" style="margin-top:10px;"th:value="文件上传区域"> </div>
<input id="submit" type="submit" value="上传"
style="display: none;margin-top: 10px;"/>
</form>
<script type="text/javascript">
//动态添加上传按钮
function add(){
var innerdiv = "<div>";
innerdiv += "<input type='file' name='fileUpload' required='required'>"+
"<input type='button' value-'删除’ onclick='remove(this)'>";
innerdiv +="</div>";
$("#file").append(innerdiv);
//打开上传按钮
$("#submit").css("display","block");
}
//删除当前行<div>
function remove (obj) {
$(obj).parent().remove();
if($("#file div").length ==0){
$("#submit").css("display","none");
}
}
</script>
</body>
</html>
在上述代码中,第13 18行代码的