Java Servlet 中使用 HttpServletRequest 获取 multipart/form-data 文件
在 Java Servlet 中,要从 HttpServletRequest 获取 multipart/form-data 中的文件,需要使用 Servlet API 提供的 Part 接口。以下是一个示例代码:
import javax.servlet.annotation.MultipartConfig;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.Part;
import java.io.IOException;
@WebServlet("/upload")
@MultipartConfig
public class UploadServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException {
// 获取上传的文件
Part filePart = request.getPart('file'); // 'file' 是 HTML 表单中的 <input> 元素的 name 属性
// 获取文件名
String fileName = filePart.getSubmittedFileName();
// 将文件保存到指定路径
String savePath = "/path/to/save/file/" + fileName;
filePart.write(savePath);
// 响应上传成功的消息
response.getWriter().print("File uploaded successfully.");
}
}
在上面的代码中,@MultipartConfig 注解用于指定该 Servlet 支持处理 multipart/form-data 请求。然后,在 doPost 方法中,我们通过 request.getPart('file') 方法获取名为 'file' 的文件部分。然后,我们使用 getSubmittedFileName() 方法获取文件名,并使用 write() 方法将文件保存到指定路径。
注意: 上述代码中的文件保存路径是示例路径,你需要根据实际情况修改为你希望保存的路径。
原文地址: https://www.cveoy.top/t/topic/quDc 著作权归作者所有。请勿转载和采集!