页面部分
<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); } }