File实现文件上传
程序员文章站
2022-03-11 21:57:35
...
文件上传
Upload.html
1)表单 action=上传文件的后台接口 method=“post” enctype=“multipart/form-data
文件输出框<input type=”file”
<form action="/upload" method="post" enctype="multipart/form-data">
<input type="file">
<input type="submit" value="上传" name="files"
>
</form>
-
加入相应的jar包 jar包请看我下篇博客https://download.csdn.net/download/qq_36802111/10577436 jar包地址下载后解压
- 准备Servlet
url一定要与上面的表单action保持一致
- 编写后台代码实现文件上传
try {
// 配置上传参数
DiskFileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
// 解析请求的内容提取文件数据
@SuppressWarnings("unchecked")
List<FileItem> formItems = upload.parseRequest(request);
// 迭代表单数据
for (FileItem item : formItems) {
// 处理不在表单中的字段
if (!item.isFormField()) {
String fileName = item.getName();
//定义上传文件的存放路径
String path = request.getServletContext().getRealPath("/uploadFiles");
//定义上传文件的完整路径
String filePath = String.format("%s/%s",path,fileName);
File storeFile = new File(filePath);
// 在控制台输出文件的上传路径
System.out.println(filePath);
// 保存文件到硬盘
item.write(storeFile);
}
}
} catch (Exception ex) {
}
}
- 准备存放上传文件的目录,注意要和上面代码中路径保持一致
注意:空的idea不会更新到服务器(这应该是个bug),所以在里面随便存放个文件哪怕再删掉也行,迫使idea更新
因为博客无法添加附件
上一篇: 第二天servlet学习 简单登录
下一篇: 荐 遇到电脑死机,最全解决方案来啦