jsp页面文件上传代码
时间: 2024-05-12 18:17:08 浏览: 81
我可以提供一个简单的 JSP 文件上传代码示例:
```
<%@ page import="java.io.*, javax.servlet.*, javax.servlet.http.*" %>
<html>
<head>
<title>文件上传测试</title>
</head>
<body>
<h3>文件上传测试</h3>
<%
// 检查是否有文件上传
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if (!isMultipart) {
out.println("<p>没有上传文件!</p>");
}
else {
// 创建文件上传对象
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
// 设置上传文件大小的限制
upload.setSizeMax(1048576);
// 解析请求,获取所有上传文件
List<FileItem> items;
try {
items = upload.parseRequest(request);
} catch (FileUploadException e) {
out.println("<p>上传文件失败:" + e.getMessage() + "</p>");
return;
}
// 遍历所有上传文件
for (FileItem item : items) {
if (!item.isFormField()) {
// 保存文件到服务器
String fileName = item.getName();
File uploadedFile = new File("D:\\upload\\" + fileName);
try {
item.write(uploadedFile);
} catch (Exception e) {
out.println("<p>保存文件失败:" + e.getMessage() + "</p>");
return;
}
out.println("<p>已上传文件:" + fileName + "</p>");
}
}
}
%>
<form action="upload.jsp" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="上传">
</form>
</body>
</html>
```
该示例使用 Apache Commons FileUpload 库来解析 JSP 页面中的文件上传请求,并将上传的文件保存到服务器上。具体来说,文件上传的过程包括如下几个步骤:
1. 检查是否有文件上传;
2. 如果有文件上传,则创建文件上传对象;
3. 设置上传文件大小的限制;
4. 解析请求,获取所有上传文件;
5. 遍历所有上传文件,如果是文件,则保存文件到服务器;
6. 显示上传结果。
注意,该示例仅仅对上传文件的基本操作进行了演示,实际应用中还需要进行更加完善的文件处理和错误处理。
阅读全文