首页 > 代码库 > spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小

spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小

第一步:配置sping 

Xml代码  技术分享
  1. <bean id="multipartResolver"  
  2. class="org.springframework.web.multipart.commons.CommonsMultipartResolver">  
  3. <!--1024*200即200k-->  
  4. <property name="maxUploadSize" value=http://www.mamicode.com/"204800"/>  
  5. <!--resolveLazily属性启用是为了推迟文件解析,以便在UploadAction 中捕获文件大小异常-->  
  6. <property name="resolveLazily" value=http://www.mamicode.com/"true"/>    
  7. </bean>  


第二步:在上传action中自己捕获异常 

Java代码  技术分享
  1. @RequestMapping  
  2. public void execute(  
  3. @RequestParam(required = false) MultipartFile file,  
  4. @RequestParam(value = "file_info_id", required = false) Integer fileInfoId,  
  5. throws Exception {  
  6.         if (file == null || file.isEmpty()) {  
  7. return;  
  8.         byte[] bytes = file.getBytes();  
  9. ………………  
  10.   @ExceptionHandler(Exception.class)         
  11. public ModelAndView handleException(Exception ex,HttpServletRequest request) {       
  12. new HashMap<Object, Object>();  
  13. if (ex instanceof MaxUploadSizeExceededException){  
  14. "errors", "文件应不大于 "+  
  15.                      } else{  
  16. "errors", "不知错误: " + ex.getMessage());  
  17.          return new ModelAndView("/common/file/upload", (Map) model);  
  18.     }    
  19.     private String getFileKB(long byteFile){  
  20. if(byteFile==0)  
  21. return "0KB";  
  22. long kb=1024;  
  23. return ""+byteFile/kb+"KB";  
  24.     private String getFileMB(long byteFile){  
  25. if(byteFile==0)  
  26. return "0MB";  
  27. long mb=1024*1024;  
  28. return ""+byteFile/mb+"MB";  
  29.     }  


第三步:界面 

Html代码  技术分享
    1. <script type="text/javascript">  
    2.     $(‘#frmupload1‘).submit(function() {  
    3.             alert(‘请选择上传导入文件!‘);  
    4.             return false;  
    5.             if(!isvalidatefile($(‘#file1‘).val()))  
    6.                   
    7.     });  
    8.         if ($(‘#file2‘).val() == ‘‘) {  
    9.             $(‘#file2‘).focus();  
    10.         }else{  
    11.                   return false;  
    12.         }  
    13. });  
    14. function isvalidatefile(obj) {  
    15.     var extend = obj.substring(obj.lastIndexOf(".") + 1);  
    16.     if (extend == "") {  
    17.         if (!(extend == "xls" )) {  
    18.             return false;  
    19.     }  
    20. }  
    21. <body>  
    22. <h1>上传文件</h1>  
    23. <form action="" method="post" enctype="multipart/form-data" onsubmit="return checkSubmit();">  
    24.     <p>请选择文件:</p>  
    25.     <p ${not empty errors ?"style=‘color : red;‘":""}>${errors}</p>  
    26. <input type="file" name="file" id="file"/>&nbsp;<input type="submit" value=http://www.mamicode.com/"确定"/>  
    27. </form>  
    28. </body

spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小