我是servlet编程的新手,我需要使用servlet开发一个.WAR
API,它只会将xlsx文件上传到服务器中的特定路径(此API将由WebFocus(一种用于报告的编程语言)使用)
特定路径将位于html <form>
这是我的HTML
<html>
<body>
<form action="UploadServlet" method="Post" enctype="multipart/form-data">
Select File:<input type="file" name="fname"/><br/>
<input type="hidden" name="path" value="G:/newFolder" />
<input type="submit" value="upload"/>
</form>
</body>
</html>
现在应该在我的UploadServlet.java
文件中写什么才能将xlsx文件上传到路径隐藏文件中定义的路径
目前在我的UploadServlet.java中,我使用了MultipartRequest
,它正确地将文件上传到目的地,但我希望distenation是<form>
import java.io.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import com.oreilly.servlet.MultipartRequest;
public class UploadServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
MultipartRequest m=new MultipartRequest(request,"g:/newFolder");
out.print("successfully uploaded");
}
}
任何帮助将不胜感激。
答案 0 :(得分:0)
只需使用提交的变量的值替换java代码中的路径:
String uploadPath = request.getParameter("path");
MultipartRequest m = new MultipartRequest(request, uploadPath);
现在,您的MultipartRequest
会使用隐藏字段中的值进行初始化。
请注意MultipartRequest
limits the upload size to 1 megabyte。