1. 在前臺頁面中:
<form action="<%=request.getContextPath()%>/fileupload" method="post" enctype="multipart/form-data">
上傳文件:<input type="file" name="file1" value="上傳文件" /><br/>
<input type="submit" value="提交"/>
</form>
其中,method必須設置爲post,enctype必須設置爲multipart/form-data,這種情況下,後臺不能通過getParamter(String name)獲取傳值。
2. 在後臺Servlet中:
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
ServletInputStream sis = req.getInputStream();
String savePath = this.getServletContext().getRealPath("/123.txt");
FileOutputStream fos = new FileOutputStream(savePath);
byte[] media = new byte[1024];
int length = sis.read(media, 0, 1024);
while(length != -1)
{
fos.write(media, 0, length);
length = sis.read(media, 0, 1024);
}
fos.close();
sis.close();
}
使用HttpServletRequest的getInputStream()獲取輸出流。