spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小
来源:互联网 发布:云上贵州大数据的意义 编辑:程序博客网 时间:2024/05/29 11:17
第一步:配置sping
第二步:在上传action中自己捕获异常
第三步:界面
参考来源:
spring MVC上传文件使用了common.fileupload组件
使用Spring MVC和注释配置来实现文件上传
- <bean id="multipartResolver"
- class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
- <!--1024*200即200k-->
- <property name="maxUploadSize" value="204800"/>
- <!--resolveLazily属性启用是为了推迟文件解析,以便在UploadAction 中捕获文件大小异常-->
- <property name="resolveLazily" value="true"/>
- </bean>
第二步:在上传action中自己捕获异常
- @RequestMapping
- public void execute(
- @RequestParam(required = false) MultipartFile file,
- @RequestParam(value = "file_info_id", required = false) Integer fileInfoId,
- ModelMap model, HttpServletRequest request) throws Exception {
- if (file == null || file.isEmpty()) {
- return;
- }
- byte[] bytes = file.getBytes();
- ……………………
- ………………
- }
- @ExceptionHandler(Exception.class)
- public ModelAndView handleException(Exception ex,HttpServletRequest request) {
- Map<Object, Object> model = new HashMap<Object, Object>();
- if (ex instanceof MaxUploadSizeExceededException){
- model.put("errors", "文件应不大于 "+
- getFileKB(((MaxUploadSizeExceededException)ex).getMaxUploadSize()));
- } else{
- model.put("errors", "不知错误: " + ex.getMessage());
- }
- return new ModelAndView("/common/file/upload", (Map) model);
- }
- private String getFileKB(long byteFile){
- if(byteFile==0)
- return "0KB";
- long kb=1024;
- return ""+byteFile/kb+"KB";
- }
- private String getFileMB(long byteFile){
- if(byteFile==0)
- return "0MB";
- long mb=1024*1024;
- return ""+byteFile/mb+"MB";
- }
第三步:界面
- <script type="text/javascript">
- $(function() {
- $('#frmupload1').submit(function() {
- if ($('#file1').val() == '') {
- alert('请选择上传导入文件!');
- $('#file1').focus();
- return false;
- }else{
- if(!isvalidatefile($('#file1').val()))
- return false;
- }
- });
- $('#frmupload2').submit(function() {
- if ($('#file2').val() == '') {
- alert('请选择上传导入文件!');
- $('#file2').focus();
- return false;
- }else{
- if(!isvalidatefile($('#file2').val()))
- return false;
- }
- });
- });
- function isvalidatefile(obj) {
- var extend = obj.substring(obj.lastIndexOf(".") + 1);
- //alert(extend);
- if (extend == "") {
- } else {
- if (!(extend == "xls" )) {
- alert("请上传后缀名为xls(Excel2003)或xlsx(Excel2007)的文件!");
- return false;
- }
- }
- return true;
- }
- <body>
- <h1>上传文件</h1>
- <form action="" method="post" enctype="multipart/form-data" onsubmit="return checkSubmit();">
- <p>请选择文件:</p>
- <p ${not empty errors ?"style='color : red;'":""}>${errors}</p>
- <input type="file" name="file" id="file"/> <input type="submit" value="确定"/>
- </form>
- </body>
参考来源:
spring MVC上传文件使用了common.fileupload组件
使用Spring MVC和注释配置来实现文件上传
0 0
- spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小
- spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小
- spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小
- spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小
- spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小
- spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小
- spring mvc CommonsMultipartResolver文件下传maxUploadSize限制大小
- Spring CommonsMultipartResolver 上传文件
- Spring CommonsMultipartResolver 上传文件
- Spring CommonsMultipartResolver 上传文件
- spring ApplicationContext-mvc之CommonsMultipartResolver对文件上传的支持
- spring mvc中使用CommonsMultipartResolver进行文件上传
- 使用Spring CommonsMultipartResolver 上传文件
- 使用Spring CommonsMultipartResolver 上传文件
- 使用Spring CommonsMultipartResolver 上传文件
- 使用Spring CommonsMultipartResolver 上传文件
- 使用Spring CommonsMultipartResolver 上传文件
- 使用Spring CommonsMultipartResolver 上传文件
- 2. 变量和基本类型
- 走迷宫
- Android Wear API 中文 ---- 翻译目录
- Java之—— java mail 发送邮件 no object DCH for MIME type multipart/mixed 之正解
- 从客户端中检测到有潜在危险的 Request.Form 值
- spring mvc CommonsMultipartResolver文件上传maxUploadSize限制大小
- Python 中用 Ctrl+C 终止多线程程序的问题解决
- 百万连接之路
- full gc频繁的分析及解决案例
- Flow chart drawing
- 【笔试/面试】—— 二叉树的深度和宽度
- 程序员需要具备的基本技能
- RTImageAssets:自动生成全尺寸icon以及2x/3x图片
- 关于mybatis增删改查时条件为一个集合时如何利用foreach书写sql语句