简单struts2文件上传

Posted ComputerNotes

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单struts2文件上传相关的知识,希望对你有一定的参考价值。

点击↑ ↑ ↑"JavaStudyNotes"↑ ↑ ↑

Java基础 | 数据库 | 新媒体运营 | 学习视频 | 学习资料下载



现在是资源共享的时代,同时也是知识共享的时代

本人声明




第一步:在WEB-INF/lib下加入commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar。这两个文件可以从http://commons.apache.org/下载。

可以直接用struts提供的项目中lib文件

第二步:把form表的enctype设置为: "multipart/form-data",如下:

简单struts2文件上传

第三步:在Action类中添加一下属性,属性蓝色部分对应于表单中文件字段的名称:


简单struts2文件上传

这里省略了属性的getter/setter方法

简单struts2文件上传


下面是struts.xml的配置



简单struts2文件上传

web.xml的配置


简单struts2文件上传

这里我也是直接参考struts所提供的项目文件中的web.xml。去掉头尾,只留下<filter>过滤器即可。另外也可以添加欢迎页index.jsp.

index.jsp文件




简单struts2文件上传

upload.jsp文件

简单struts2文件上传



下面运行tomcat,首先会进入欢迎页。


简单struts2文件上传


跳转如下界面

简单struts2文件上传

添加你要上传的文件。点击upload文件即上传成功


  • 文件上传的.jar

  • 表单中的上传的名字要和action类中定义的相同

  • enctype的属性


   struts2当中定义的一些常量信息

   1.   <!-- 指定默认编码集,作用于HttpServletRequest的setCharacterEncoding方法 和freemarker 、velocity的输出 -->

         <constant name="struts.i18n.encoding" value="UTF-8"/>

    2.   <!-- 该属性指定需要Struts 2处理的请求后缀,该属性的默认值是          action,即所有匹配*.action的请求都由Struts2处理。

      如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)       隔开。 -->

    <constant name="struts.action.extension" value="do"/>

   3. <!-- 设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),    开发阶段最好关闭 -->

    <constant name="struts.serve.static.browserCache" value="false"/>

   4. <!-- 当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开 -->

    <constant name="struts.configuration.xml.reload" value="true"/>

   5.<!-- 开发模式下使用,这样可以打印出更详细的错误信息 -->

    <constant name="struts.devMode" value="true" />

   6.  <!-- 默认的视图主题 -->

    <constant name="struts.ui.theme" value="simple" />

   7.  <!– 与spring集成时,指定由spring负责action对象的创建 -->

    <constant name="struts.objectFactory" value="spring" />

   8.<!–该属性设置Struts 2是否支持动态方法调用,该属性的默认值是true。如果需要关闭动态方法调用,则可设置该属性为false。 -->

<constant name="struts.enable.DynamicMethodInvocation" value="false"/>

   9.<!--上传文件的大小限制-->

<constant name="struts.multipart.maxSize"value=“10701096"/>


qq交流群和小编微信(欢迎关注共同进步)


获得java学习资源




以上是关于简单struts2文件上传的主要内容,如果未能解决你的问题,请参考以下文章

struts2实现简单文件上传

struts2开发文件上传下载的简单实例

简单struts2文件上传

简单介绍使用GooUploader.js实现批量上传文件的方法(使用struts2)

Struts2文件上传(基于表单的文件上传)

Struts2文件上传和文件下载