要實現JavaWeb文件上傳功能,可以按照以下步驟進行:
在表單中添加一個文件上傳的標簽,并指定enctype為"multipart/form-data",例如:
<form action="upload" method="post" enctype="multipart/form-data">
<input type="file" name="file" />
<input type="submit" value="上傳" />
</form>
在服務器端編寫一個Servlet來處理文件上傳請求,例如"upload"。
getPart("file")
方法獲取到上傳的文件的Part對象。getInputStream()
方法獲取到文件的輸入流,然后可以將文件保存到服務器的指定位置。以下是一個簡單的示例代碼:
@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();
InputStream fileContent = filePart.getInputStream();
// 將文件保存到服務器的指定位置
Files.copy(fileContent, Paths.get("D:/uploads/" + fileName), StandardCopyOption.REPLACE_EXISTING);
}
}
部署和運行項目后,在瀏覽器中訪問表單頁面,選擇一個文件并點擊上傳按鈕,即可將文件上傳到服務器的指定位置。
請注意,上述示例代碼只是一個簡單的示例,實際應用中可能還需要進行文件類型驗證、文件大小限制等處理。