zoukankan      html  css  js  c++  java
  • java_struts2实现文件上传

    1.需要导入的架包:commons-fileupload-1.2.1.jar / commons-io-1.3.2.jar

    2.为form表单的entctype设置为:multipart/form-data;

    例如:

    <form name ="frm1" enctype="multipart/form-data" action="${pageContext.request.contextPath}/control/employeex/list_fileUpDown.action" method="post" >
          文件路径:<input type="file" name="uploadImg" />
         <input type="submit" value = "确 定" />
        </form>

    3.在Action类中添加以下控件属性:(注。红色的为Struts2的规定固定的)

    public class FileUpTest(){

      private File  uploadImg;   //得到上传的文件 

      private String  uploadImgContentType; //得到文件的类型

      private String  uploadImgFileName; //得到上传文件的名称

      //相应的   get  set   ...

      public String fileUpDown(){
          String path = ServletActionContext.getServletContext().getRealPath("/images");
          File saveFile = new File(new File(path),uploadImgFileName);
          if(this.uploadImg!=null){
             try {
                if(!saveFile.getParentFile().exists())
                  saveFile.getParentFile().mkdirs();
                FileUtils.copyFile(uploadImg, saveFile);
                this.message="恭喜你,上传成功!";
             } catch (IOException e) {

              //这里就不出来异常了,可以自己去处理
                e.printStackTrace();
             }
           }else{
                this.message="没有找到源文件!";
          }
             return "message";
          }

    }

    如果上传的是多个文件,只要帮文件字段设置为List或数组都可以,上传文件名和类型也应该为List或数组,他们是对应的。

  • 相关阅读:
    vue excel 二进制文件导出
    小程序 input 批量监听
    vue-cli3 环境配置
    vue 同一浏览器只允许登录一个账号的解决办法
    vue ueditor 百度富文本
    视频分享
    vue、react、mpvue、node、ng视频教程以及项目
    【转】 值得推荐的C/C++框架和库 (真的很强大)
    C# 验证过滤代理IP是否有效
    【转】 C#学习笔记14——Trace、Debug和TraceSource的使用以及日志设计
  • 原文地址:https://www.cnblogs.com/hwj2wj/p/2824679.html
Copyright © 2011-2022 走看看