Struts2文件上传配置与错误处理
需积分: 3 198 浏览量
更新于2024-09-28
1
收藏 92KB DOC 举报
"关于Struts2框架的常用资料和实践指南,包括文件上传、拦截器配置以及错误处理策略。"
在Struts2框架中,文件上传是一个常见的需求,它提供了内置的拦截器来处理这一功能。Struts2的文件上传拦截器(`fileUpload`)使得开发者能够轻松地对上传文件进行过滤和大小限制。为了使用这个拦截器,我们需要在Action的配置中添加相应的设置。例如,下面的配置示例展示了如何在Action中配置文件上传:
```xml
<action name="upload" class="com.annlee.upload.UploadAction">
<interceptor-ref name="fileUpload">
<param name="allowedTypes">image/bmp,image/gif,image/jpg</param>
<param name="maximumSize">2000000</param>
</interceptor-ref>
<interceptor-ref name="defaultStack"/>
<param name="savePath">/</param>
<result>/common/succ.jsp</result>
<result name="input">/cos_fileupload/fileupload.jsp</result>
</action>
```
在这个配置中,`allowedTypes`参数定义了允许上传的文件类型,如图像格式(bmp、gif、jpg),而`maximumSize`则设定了上传文件的最大尺寸(以字节为单位,这里为2MB)。`interceptor-ref`标签引用了默认拦截器栈`defaultStack`,确保了所有基本的拦截器服务都可用。
当文件上传失败时,Struts2框架会自动重定向到`input`逻辑视图。为了处理这种情况,需要为Action配置一个名为`input`的结果,这通常是一个显示错误信息的页面。在页面上,可以通过Struts2的`<s:fielderror/>`标签来显示错误信息。
为了提供更友好的用户体验,我们可以自定义错误消息。例如,对于文件过大或不允许的文件类型的错误,可以在国际化资源文件中添加以下键值对:
- `struts.messages.error.file.too.large`
- `struts.messages.error.content.type.not.allowed`
这些错误消息会被自动替换,从而提供定制化的错误提示。此外,如果上传失败有其他原因,可以找到并替换对应的错误关键字`struts.messages.error.uploading`,以提供更具体的错误信息。
如果未指定临时保存文件夹,Struts2会使用Java的标准临时文件目录,但为了控制和管理上传文件,推荐在应用中定义一个特定的保存路径,并在`savePath`参数中设置。
Struts2框架为文件上传提供了便利的处理机制,结合适当的配置和错误处理,可以实现高效且用户友好的文件上传功能。开发者还需要了解如何使用JFreeChart等库在Struts2中生成图表,这可能涉及到将数据转化为图形并在Action中处理,然后在结果页面展示。这通常是通过将生成的图表对象传递给视图,或者将数据写入到响应流中来实现的。
2009-07-23 上传
2010-04-08 上传
2008-03-21 上传
2009-04-07 上传
2008-09-12 上传
2011-01-08 上传
2012-02-01 上传
2010-04-28 上传
zhangxinjava
- 粉丝: 0
- 资源: 2
最新资源
- 客户关系管理系统采用JSP+MYSQL myeclipse开发环境, 并采用了struts框架模式
- anhui liaoning
- MATLAB编程(第二版)-菜鸟入门教材
- 四招-彻底查看病毒根源-彼岸联盟-花心二少教程
- linux内核情景分析
- javascript 高级编程
- 单词词频统计源代码(C#)
- 网格编程Globus入门书
- 信息系统项目管理师_知识点精华.pdf
- ISE7.1i中文教程
- ITILV3的五个生命周期管理
- 深入浅出Struts2
- DIV+CSS布局大全
- 一种基于Linux 的嵌入式HTTP的设计和实现
- 工控同中基于L nux的嵌人式HTT P臆务矗设计
- 基于Video4Linux 的USB 摄像头图像采集实现.pdf