CommonsMultipartFile
Spring提供的读取文件的类,使用方便,依赖spring-web-3.1.2.RELEASE.jar
包路径:
java.lang.Object
org.springframework.web.multipart.commons.CommonsMultipartFile
- 方法汇总:
byte[] | getBytes() | Return the contents of the file as an array of bytes. |
String | getContentType() | Return the content type of the file. |
FileItem | getFileItem() | Return the underlying org.apache.commons.fileupload.FileItem instance |
InputStream | getInputStream() | Return an InputStream to read the contents of the file from. |
String | getName() | Return the name of the parameter in the multipart form. |
String | getOriginalFilename() | Return the original filename in the client's filesystem. |
long | getSize() | Return the size of the file in bytes. |
String | getStorageDescription() | Return a description for the storage location of the multipart content. |
protected boolean | isAvailable() | Determine whether the multipart content is still available. |
boolean | isEmpty() | Return whether the uploaded file is empty, that is, either no file has been chosen in the multipart form or the chosen file has no content. |
voic | transferTo(File dest) | Transfer the received file to the given destination file. |
使用方法:
- 1.spring配置文件配置文件上传解析器 <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="defaultEncoding" value="utf-8"></property> <property name="maxUploadSize" value="90000000" /> <property name="uploadTempDir" value="uploadFiles"></property> </bean> 2.html写法注意两点 a.input类型为file:<input type="file" name="sealPfxFile" id="sealPfxFile" size="24" /> b.form中增加参数 enctype="multipart/form-data": <form id="addSeal" name="addSeal" action="${root}/seal/o_add.do" enctype="multipart/form-data" method="post"> 3.Service的写法 (注意与html中定义的名称相同即可通过get方法取得需要的内容) public String doAction( @RequestParam("sealPfxFile") CommonsMultipartFile sealPfxFile, Seal seal, ModelMap modelMap, HttpServletRequest request) throws Exception { //上传文件名 String fileName = sealPfxFile.getFileItem().getName(); //上传文件流 InputStream is = sealPfxFile.getInputStream(); }