JAVA的文件上传,比较常用的,还是记录一下。
一、环境
J2EE,Mabitis与Spring框架,所需jar包:
commons-io-1.2.jar
commons-fileupload-1.1.1.jar
二、代码
前端代码
前端form中必须加上这一段enctype="multipart/form-data"
提交方式必须是"post"
<form action="/upload.frm?method=upload" method="post" name="myform" id="myform" enctype="multipart/form-data"> <input type="file" name="file_upload"> <input type="submit" id="savebutton" value="提交" class="button_save"> </form>
配置文件
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!-- set fileUpload max size is 100MB --> <property name="maxUploadSize"> <value>104857600</value> </property> </bean>
后端代码
上传路径最好放在WEB-INF下确保安全
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; // 得到上传的文件,file_upload对应前端代码中file组件的name MultipartFile mFile = multipartRequest.getFile("file_upload"); // 得到上传服务器的路径 String path = request.getSession().getServletContext() .getRealPath("/WEB-INF/upload/"); // 得到上传的文件的文件名 String filename = mFile.getOriginalFilename(); InputStream inputStream = mFile.getInputStream(); byte[] b = new byte[1048576]; int length = inputStream.read(b); path += "\\" + filename; // 文件流写到服务器端 FileOutputStream outputStream = new FileOutputStream(path); outputStream.write(b, 0, length); inputStream.close(); outputStream.close();
本文出自 “雪飘七月” 博客,请务必保留此出处http://xuepiaoqiyue.blog.51cto.com/4391594/1715328
原文:http://xuepiaoqiyue.blog.51cto.com/4391594/1715328