Java

Java怎么实现文件上传功能

小亿
110
2023-07-28 20:46:12
栏目: 编程语言

在Java中实现文件上传功能有多种方式,下面介绍一种常见的方式:

  1. 创建一个HTML表单页面,用于用户选择要上传的文件:
<!DOCTYPE html>
<html>
<head>
<title>文件上传</title>
</head>
<body>
<form action="upload" method="post" enctype="multipart/form-data">
<input type="file" name="file" />
<input type="submit" value="上传" />
</form>
</body>
</html>
  1. 在服务器端创建一个Servlet或Controller类,处理文件上传请求:
import java.io.File;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.annotation.WebServlet;
import org.apache.commons.io.FileUtils;
@WebServlet("/upload")
public class UploadServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 获取上传的文件
Part filePart = request.getPart("file");
// 获取文件名
String fileName = filePart.getSubmittedFileName();
// 指定保存文件的路径
String savePath = "路径";
// 将文件保存到指定路径
File file = new File(savePath, fileName);
FileUtils.copyInputStreamToFile(filePart.getInputStream(), file);
// 返回上传成功的信息
response.getWriter().println("文件上传成功");
}
}

以上代码使用了Servlet 3.0的API来处理文件上传,需要在web.xml或使用注解@WebServlet配置Servlet。在doPost方法中,首先通过request.getPart方法获取到上传的文件,然后获取文件名和文件保存路径,最后使用Apache Commons IO库将文件保存到指定路径。

0
看了该问题的人还看了