- 浏览: 277344 次
- 性别:
- 来自: 济南
-
文章分类
最新评论
-
han2000lei:
问题已解决,见下面代码<pre name="c ...
一个关于struts2上传文件超过限制大小如何提示的问题 -
liuxuejin:
你好,我想请教你一个问题,我们打算开发一个BS架构的卖家服务应 ...
淘宝API开发ISV订购页面必看 -
andey007518:
properties文件直接放到src路径下,
Propert ...
java读取properties配置文件 -
dove19900520:
朋友,你这个支持群发吗?为什么我按照你的写法来了改了一下,做成 ...
javamail发送邮件 -
emengbingkuai:
终于找到了
javascript中获取某月的天数
问题描述:
在使用struts2中上传文件时,在框架中本身给我们设置了一个限制大小。如果上传的文件超过这个大小,在拦截器中就返回了,并且这个错误提示是系统内置的,放在Action级别的Error当中。这个错误非常不友好,需要我们自己替换掉。下面的代码做到了,但出现了一个问题,看看哪位能够解决掉?
1、首先先说如何解决掉系统内置的ActionError,就是重写addActionError方法(见下面代码中)。
2、下面,问题出现了:我有一个验证方法,防止所有内容为空的验证,方法名见下面代码中validateAuthImgUpload方法(这是一个多动作控制器的验证),在这个方法当中判断页面的内容为空时,添加一个addActionError信息。这时,按上面的前提,文件上传时超出了系统的大小限制,拦截器拦截之后,将我修改的后的友好的提示放了进去,同时,它还将所有的提交的页面的内容置空了。然后又添加了validateAuthImgUpload方法的ActionError进去(这个地方我不明白,为什么validateAuthImgUpload方法能够执行,拦截中有错误了,按说是不执行了才对,但它的确是将这个方法当中的错误信息放进了ActionError当中),这时加上第一个错误,就有两个错误了,在页面一下子就显示出两个错误提示给用户,这种提示是不对的,哪位大侠能帮忙解决?
在使用struts2中上传文件时,在框架中本身给我们设置了一个限制大小。如果上传的文件超过这个大小,在拦截器中就返回了,并且这个错误提示是系统内置的,放在Action级别的Error当中。这个错误非常不友好,需要我们自己替换掉。下面的代码做到了,但出现了一个问题,看看哪位能够解决掉?
1、首先先说如何解决掉系统内置的ActionError,就是重写addActionError方法(见下面代码中)。
2、下面,问题出现了:我有一个验证方法,防止所有内容为空的验证,方法名见下面代码中validateAuthImgUpload方法(这是一个多动作控制器的验证),在这个方法当中判断页面的内容为空时,添加一个addActionError信息。这时,按上面的前提,文件上传时超出了系统的大小限制,拦截器拦截之后,将我修改的后的友好的提示放了进去,同时,它还将所有的提交的页面的内容置空了。然后又添加了validateAuthImgUpload方法的ActionError进去(这个地方我不明白,为什么validateAuthImgUpload方法能够执行,拦截中有错误了,按说是不执行了才对,但它的确是将这个方法当中的错误信息放进了ActionError当中),这时加上第一个错误,就有两个错误了,在页面一下子就显示出两个错误提示给用户,这种提示是不对的,哪位大侠能帮忙解决?
package com.test.action; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.util.FileCopyUtils; import com.test.service.impl.PicUpLoadImpl; import com.opensymphony.xwork2.ActionSupport; @SuppressWarnings("serial") public class PicUpAction extends ActionSupport { Logger logger = LoggerFactory.getLogger(PicUpAction.class); private PicUpLoadImpl picUpLoad; private String picName; private File pic; private String picFileName; private String picContentType; public void setPicUpLoad(PicUpLoadImpl picUpLoad) { this.picUpLoad = picUpLoad; } public String getPicName() { return picName; } public void setPicName(String picName) { this.picName = picName; } public File getPic() { return pic; } public void setPic(File pic) { this.pic = pic; } public String getPicFileName() { return picFileName; } public void setPicFileName(String picFileName) { this.picFileName = picFileName; } public String getpicContentType() { return picContentType; } public void setpicContentType(String picContentType) { this.picContentType = picContentType; } /* * 上传验证码图片 * @param */ public String authImgUpload() { InputStream picStream; byte[] byt = new byte[0]; try { picStream = new FileInputStream(pic); byt = FileCopyUtils.copyToByteArray(picStream); picStream.close(); if(byt.length>1048576){ this.clearActionErrors(); this.addActionError("上传图片超过1M大小限制"); return "input"; } } catch (FileNotFoundException e1) { this.clearActionErrors(); this.addActionError("上传文件没有找到,正确选择文件"); logger.error("上传的文件没有找到"+e1.getMessage()); } catch (IOException e) { this.clearActionErrors(); this.addActionError("IO Exception"); logger.error("上传文件读取错误"+e.getMessage()); } int flag = this.picUpLoad.upload("", picName, byt); if(flag==1){ return "authimgupok"; }else{ return ActionSupport.INPUT; } } public void validateAuthImgUpload() {//validate()验证方法 if("".equals(picName)|| picName==null||pic == null){//验证不能为空 // this.clearActionErrors();//这个地方清也不对,不清也不对 this.addActionError("请输入图片名称并选择上传文件"); }else{ String fileName = this.getPicFileName();//取到文件名 int index = fileName.indexOf(".");//找到点号,准备取后缀名 String fix = fileName.substring(index+1); if(!("jpg".equals(fix)||"png".equals(fix)||"bmp".equals(fix)||"gif".equals(fix))){ this.clearActionErrors(); this.addActionError("图片只能是 gif/jpg/png/bmp 格式"); } } } @Override public void addActionError(String anErrorMessage) {//这个是重写的addActionError的方法,去掉系统的提示,使用自已的 if(anErrorMessage.startsWith("Request exceeded allowed size limit")){ super.addActionError("上传图片超过1M大小限制"); }else{ super.addActionError(anErrorMessage); } } }
评论
1 楼
han2000lei
2015-07-20
问题已解决,见下面代码
public void validateAuthImgUpload() { if("".equals(picName)|| picName==null||pic == null){//验证不能为空 if(!this.hasActionErrors()){]//加入判断,如果不为空,说明拦截器当中有错误了,就不再执行这部分,这部分就显示不出来了 this.addActionError("请输入图片名称并选择上传文件"); } }else{ String fileName = this.getPicFileName();//取到文件名 int index = fileName.indexOf(".");//找到点号,准备取后缀名 String fix = fileName.substring(index+1); if(!("jpg".equals(fix)||"png".equals(fix)||"bmp".equals(fix)||"gif".equals(fix))){ this.clearActionErrors(); this.addActionError("图片只能是 gif/jpg/png/bmp 格式"); } } }
发表评论
-
Spring
2015-04-09 13:30 0spring与mybatis整合地址: http://w ... -
json的介绍(三)----json在java的使用
2012-12-05 14:20 1402在java中,常使用JSON-LIB,首先要有几个支持的包 j ... -
MyEclipse6.0 MyEclise9.0插件版下载合集
2012-11-21 17:03 2509本人制作了MyEclispse6.0及MyEclispse9. ... -
MyEclipse想说爱你不容易(写于2012-11-18)
2012-11-19 11:20 9624对于java的开发人员人来,eclipse与MyE ... -
MyEclipse 8.5 M1 下载合集-包含window,linux,Mac版
2011-01-30 22:15 6030MyEclipse 8.0GA发布后,MyEclipse官方并 ... -
MyEclipse 8.0 GA 下载合集-包含window,linux,Mac版
2011-01-30 22:13 2231MyEclipse官方放出了最新版本的MyEclipse 8 ... -
ajax在ie与firfox的乱码解决
2009-07-17 17:56 1798今天做网站时,使用ajax,传入action的编码,在ie中传 ... -
java.util.Date与java.util.Calendar
2009-07-15 17:01 0究竟什么是一个 Calendar 呢?中文的翻译就是日历,那我 ... -
eclipse中编码设置
2009-06-03 20:35 3342在使用eclipse+MyEclipse开 ... -
java读取properties配置文件
2009-05-01 20:01 77939今天要将以前一个项目的数据连接改成从properties文件中 ... -
解决Netbeans导入文件乱码问题
2009-04-28 23:25 20351.找到你的Netbeans安装目录下的etc文件夹,如C:\ ... -
首页数据加载
2009-04-27 03:19 11771、配置web.xml。欢迎页面为随便的一页面,不要配置为in ... -
netbeans快捷键
2009-04-26 23:53 2274最近使用netbeans,发现还 ... -
myeclipse7.0插件安装
2009-04-21 11:22 4313最近用的myeclipse7.1,需要安装一些插件,于 ... -
大幅优化myeclipse的速度
2009-04-19 11:07 47861、去除不需要加载的模块 一个系统20%的功能往往能够满 ... -
log4j中使用相对路径
2009-04-11 11:25 4657很多朋友想把日志写在web应用当中,下面来介绍一下: log4 ... -
JavaMail的编码问题
2009-03-25 16:17 1950在使用javamail api开发邮件服务系统时,我们常常会碰 ... -
javamail发送邮件
2009-03-21 16:55 10863今天学习了一下JavaMail,javamail发送邮件确实是 ... -
Helma中的Filter
2009-02-16 09:07 0<div class="iteye-blog- ... -
json的介绍(一)----json的格式
2009-01-12 13:21 2177要使用json来传输数据,必须将所承载的数据转换成j ...
相关推荐
MTPA数值求解:双法探究,MTPA数值求解详解:两种方法的比较与应用探索,MTPA数值求解两种方法 ,MTPA数值求解; 方法一; 方法二;,MTPA数值求解的两种高效方法
# 踏入C语言的奇妙编程世界 在编程的广阔宇宙中,C语言宛如一颗璀璨恒星,以其独特魅力与强大功能,始终占据着不可替代的地位。无论你是编程小白,还是有一定基础想进一步提升的开发者,C语言都值得深入探索。 C语言的高效性与可移植性令人瞩目。它能直接操控硬件,执行速度快,是系统软件、嵌入式开发的首选。同时,代码可在不同操作系统和硬件平台间轻松移植,极大节省开发成本。 学习C语言,能让你深入理解计算机底层原理,培养逻辑思维和问题解决能力。掌握C语言后,再学习其他编程语言也会事半功倍。 现在,让我们一起开启C语言学习之旅。这里有丰富教程、实用案例、详细代码解析,助你逐步掌握C语言核心知识和编程技巧。别再犹豫,加入我们,在C语言的海洋中尽情遨游,挖掘无限可能,为未来的编程之路打下坚实基础!
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
'Function 生成视频缩略图(ByVal 视频文件 As String, ByVal 保存缩略图的文件路径 As String, Optional ByVal jpg图像品质 As Long = 80, _ ' Optional ByVal 缩略图宽度 As Long = 500, Optional ByVal 缩略图高度 As Long = 500 _ ' , Optional 返回图像实际宽度 As Long, Optional 返回图像实际高度 As Long) As Boolean Public Function SaveImageAs(LoadImgFile As String, ByVal SaveAsImgFile As String, _ Optional ByVal JpgQuality As Long = 80, Optional hPal As Long, Optional Resolution As Single) As Boolean
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
bkall_answers(2).json
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
近日,一份由清华大学团队发布《DeepSeek:从入门到精通》的AI学习教程冲上了热搜,它是由清华大学新闻与传播学院新媒体研究中心元宇宙文化实验室的余梦珑博士后及其团队倾力打造,从三个方面深入剖析了DeepSeek,DeepSeek是什么?有什么用?怎么使用? 详细论述了其应用场景与使用方法,并讲解了如何通过设计精妙的提示语来提升AI的使用效率,以及丰富的实例干货。 全部104页,完整版资料已经帮大家整理好了,免费领取 资料链接: https://pan.quark.cn/s/be3b500c539c
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
冰点下载器珍藏版.zip
Wallpaper Engine 是一款广受欢迎的动态壁纸软件,允许用户将各种动态、交互式壁纸应用到桌面上。其丰富的创意工坊内容让用户可以轻松下载和分享个性化的壁纸。而“一键提取”功能则是 Wallpaper Engine 中一个非常实用的工具,能够帮助用户快速提取和保存壁纸资源,方便后续使用或分享。
科研人员
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
13考试真题最近的t66.txt
对外承包项目借款合同2[示范文本].doc
在日常的工作和学习中,你是否常常为处理复杂的数据、生成高质量的文本或者进行精准的图像识别而烦恼?DeepSeek 或许就是你一直在寻找的解决方案!它以其高效、智能的特点,在各个行业都展现出了巨大的应用价值。然而,想要充分发挥 DeepSeek 的优势,掌握从入门到精通的知识和技能至关重要。本文将从实际应用的角度出发,为你详细介绍 DeepSeek 的基本原理、操作方法以及高级技巧。通过系统的学习,你将能够轻松地运用 DeepSeek 解决实际问题,提升工作效率和质量,让自己在职场和学术领域脱颖而出。现在,就让我们一起开启这场实用又高效的学习之旅吧!
借助java编程语言和MySQL数据库等实现系统的全部功能,接下来对系统进行测试,测试系统是否有漏洞和测试用户权限来完善系统,最终系统完成达到相关标准。 本系统主要包括管理员和用户两个角色;主要包括首页、个人中心、用户管理、商品分类管理、商品信息管理、促销产品管理、系统管理、订单管理等功能的管理系统。 系统权限按管理员和用户这两类涉及用户划分。 (1)管理员功能需求 管理员登陆后,主要包括首页、个人中心、用户管理、商品分类管理、商品信息管理、促销产品管理、系统管理、订单管理等功能。 2)用户功能需求 用户登陆后进入小程序首页,可以实现首页、商品信息、促销产品、购物车、我的等,在我的页面可以对个人中心、我的收藏管理、用户充值、购物车、我的订单等功能进行详细操作。