<form action="webService/predictFileService" method="post" enctype="multipart/form-data"> 上传文件: <input type="file" name='fileName'/> <input type="submit" value="提交网页文件" /> </form>对应的请求为:
需要apache-fileupload工具,下面是maven依赖。
<dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version> </dependency>
//使用apache-FileUpload工具处理上传文件请求
void dealUploadFile( HttpServletRequest request) throws Exception{
//开辟本地临时位置用来中转文件
DiskFileItemFactory factory = new DiskFileItemFactory();
//用来解析HttpServletRequest中的文件
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setHeaderEncoding("utf-8");
List<FileItem> items = null;
//下句执行后已经得到文件,放在临时位置
items = upload.parseRequest(request);
//允许上传多个文件,需要遍历
Iterator<FileItem> iter = items.iterator();
while (iter.hasNext()) {
FileItem item = iter.next();
item.getSize();//文件的大小,字节
item.getName();//文件名字
File uploadedFile = new File("d:/upload.jpg");//不限于jpg,可根据上传文件的名字的后缀来动态确定后缀
//由临时文件得到我们最终的文件
item.write(uploadedFile);
}
}原文:http://blog.csdn.net/chuchus/article/details/45620855