java文件上传功能实现
时间: 2023-10-13 18:06:44 浏览: 87
实现Java文件上传功能可以使用Java Servlet技术。首先在前端编写好文件上传表单,然后在Servlet中通过获取表单中的文件流,并将其保存到指定的文件夹中,实现文件上传功能。
以下是Java Servlet中实现文件上传的代码示例:
```java
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import javax.servlet.ServletException;
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;
@WebServlet("/UploadFile")
public class UploadFile extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
// 保存文件的目录
String savePath = request.getServletContext().getRealPath("/upload");
// 如果目录不存在则创建
File file = new File(savePath);
if (!file.exists() && !file.isDirectory()) {
file.mkdir();
}
// 获取上传的文件
Part part = request.getPart("file");
// 获取上传文件的名字
String fileName = part.getSubmittedFileName();
// 保存文件
part.write(savePath + "/" + fileName);
PrintWriter writer = response.getWriter();
writer.print("文件上传成功!");
}
}
```
在上述代码中,首先获取文件保存的文件夹,如果文件夹不存在,则创建。接着通过`request.getPart("file")`获取上传的文件流,使用`part.getSubmittedFileName()`获取上传文件的名字,最后使用`part.write(savePath + "/" + fileName)`将文件保存到指定文件夹中。
以上就是实现Java文件上传功能的简单示例。
阅读全文