zoukankan      html  css  js  c++  java
  • Struts(四)之文件上传、下载

      一、文件的上传(拦截器)

      1.1、文件上传的条件   

        表单method必须是post;
        enctype取值必须是multipart/form-data;
        提供文件选择域。

      1.2、文件上传的例子

        upload1.jsp

        

        struts.xml的配置编写

        

      动作类编写

      

        测试:

        

      记得去tomcat的发布目录下查找上传的文件

      

      1.3、文件上传的配置

        1.3.1、文件上传的大小限制(2M)  

        从default.properties文件中

        如果超过了默认的大小,upload拦截器就会转向一个input的逻辑视图

        如果没有在struts.xml中配置则会出现

        

        在action中配置了<result type="input">/upload.jsp</result>

         

        超过了上传的文件大小:

        

        1.3.2、改变文件上传大小的限制

          在struts.xml中改变struts.properties文件中的常量 

          

        1.3.3、限制文件上传类型

            1.通过限制文件的扩展名

            怎么限制?通过给fileupload拦截器注入参数

            

            当你在upload.jsp中选择的是txt文件时

              

          2.通过限制文件上传的MIME类型

          

          当你上传了非限定的MIME类型时,有如下错误提示

          

        1.3.4、出错后的错误信息中文提示(Struts2中的所有文件都是基于国际化的)

          默认信息提示在:struts2-core.jarorg.apache.struts2struts-message.properties

            

          解决办法:用国际化消息资源包,把对应的key取值改为中文即可。

          常用的Key值:

          

          

      1.4多文件上传

        jsp

        

        struts.xml

        

        动作类中

        

        测试:

          

          

      二、文件下载

        就是一种结果类型(Stream)

        1、文件下载的例子

          创建一个download的动作类

          

          在struts.xml中配置

          

      

        

          

       

  • 相关阅读:
    云计算上的个人数据隐私问题 狼人:
    应用兼容性Android Studio IDEA:基于IDEA的安卓开发环境
    最小生成树卡hdu1875畅通工程再续
    编译文件编译PHP的windows版本
    动作运动预防颈椎之痛的几个小技巧
    文件资源使用Texture管理cocosBuilder项目资源:纹理文件使用(TexturePacker)
    配置级别greenplum 可用空间计算
    返回定义利用DataTable、DataSet返回SQL Server的表或者单个字段
    构造函数对象[置顶] 揭开Javascript属性constructor/prototype的底层原理
    缓存二级缓存Spring环境下Hibernate二级缓存的应用
  • 原文地址:https://www.cnblogs.com/cxyzyh2017/p/6628055.html
Copyright © 2011-2022 走看看