博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
struts2 文件上传
阅读量:6072 次
发布时间:2019-06-20

本文共 2263 字,大约阅读时间需要 7 分钟。

struts框架上传文件,需要的两个包:commons-fileupload-1.3.2.jar  、commons-io-2.2.jar

上传文件,界面需要一个input标签   form表单中除了action method  之外,还需要一个  enctype="multipart/form-data"  属性  例如:

另外需要一个Action ,

三个成员变量:  1.File类型   2.String fileFileName属性名   3.String fileContentType属性名

package com.maya.controller;import java.io.File;import java.io.IOException;import java.text.DecimalFormat;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Random;import org.apache.commons.io.FileUtils;import com.opensymphony.xwork2.ActionSupport;public class FileAction extends ActionSupport {        public String input(){        return SUCCESS;    }    public String select() throws IOException{                Random rand=new Random();        int n=rand.nextInt(9999);        DecimalFormat df=new DecimalFormat("0000");        String sss=df.format(n);            //格式化随机数,如果不够四位数,用0补齐                SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMdd");        //格式化时间        String str=sdf.format(Calendar.getInstance().getTime());                File destFile=new File("d:\\"+name+"_"+str+"_"+sss+"_"+fileFileName);        FileUtils.copyFile(file, destFile);        return SUCCESS;    }                private File file;                //文件上传需要定义一个file 类型的变量    private String name;            private String fileFileName;        //上传时,文件的名称,遵循约定,用这个名称,上传文件时自动将文件名赋值到里面      file.getName()取到的值不是原文件的名    private String fileContentType;        //文件类型 同上,约定为这个名称传文件时自动将文件类型赋值到里面(常用作限制文件上传格式)    public String getFileContentType() {        return fileContentType;    }    public void setFileContentType(String fileContentType) {        this.fileContentType = fileContentType;    }    public String getFileFileName() {        return fileFileName;    }    public void setFileFileName(String fileFileName) {        this.fileFileName = fileFileName;    }    public File getFile() {        return file;    }    public void setFile(File file) {        this.file = file;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    }

上传完成,则对应的位置会有相应的文件

 

 

如果需要实现多文件上传,则File  换成 File数组即可,

public String upload() throws IOException{                for(int i=0;i

 

转载于:https://www.cnblogs.com/zhaotiancheng/p/6589266.html

你可能感兴趣的文章
04-利用思维导图梳理JavaSE-面向对象(基础篇)
查看>>
【边缘检测 v0.7beta】——献给我的大学
查看>>
创建定性用户画像
查看>>
Dojo:不容忽视的RIA框架
查看>>
cygwin+NDK基本使用
查看>>
File类——File对象常见功能
查看>>
jsp中的类似 if - else 语句 的语法
查看>>
微信小程序开发指引
查看>>
视角 | 微服务的数据一致性解决方案
查看>>
百度停止社招
查看>>
probe wifi traffic in the air
查看>>
HTTP请求头与响应头 实例
查看>>
51CTO专访清无:Nginx_lua的应用及性能对比
查看>>
Python即时网络爬虫项目启动说明
查看>>
svn客户端常用命令
查看>>
Django学习笔记之——Views
查看>>
win32 下oracle 10.2.0.1.0 致命bug:ORA-27300
查看>>
学习笔记:对下拉菜单的简单封装
查看>>
纯手工打造漂亮的垂直时间轴,使用最简单的HTML+CSS+JQUERY完成100个版本更新记录......
查看>>
css/js在线压缩工具
查看>>