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

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

用两个包:一个是commons-fileupload-1.3.2.jar,另一个是commons-io-2.2.jar

jsp界面:

<%@ page language="java" contentType="text/html; charset=utf-8"    pageEncoding="utf-8"%>
Insert title here

做Action。

三个成员:1.File file上传的文件 2.String fileFileName属性名 3.String fileContentType属性名
org.apache.commons.io.FileUtils.copyFile很简单。

 

sturts.xml配置文件,可在里面添加常量,修改文件上传的大小限制。就可以上传大文件了

{1}_{2}.jsp

 

解决重命名问题

package com.itnba.maya.controller;import java.io.File;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date;import org.apache.commons.io.FileUtils;import com.opensymphony.xwork2.ActionSupport;public class ShangchuanAction extends ActionSupport {    private File file;    private String fileFileName;//上传文件的名字    private String fileContentType;//上传文件的格式            public File getFile() {        return file;    }    public String getFileFileName() {        return fileFileName;    }    public void setFileFileName(String fileFileName) {        this.fileFileName = fileFileName;    }    public String getFileContentType() {        return fileContentType;    }    public void setFileContentType(String fileContentType) {        this.fileContentType = fileContentType;    }    public void setFile(File file) {        this.file = file;    }    public String input(){                return SUCCESS;    }    public String add() throws IOException{        //为了防止上传文件重名,在文件前面加上当前时间        long l=System.currentTimeMillis();        Date date=new Date(l);        SimpleDateFormat sdf= new SimpleDateFormat("yyyyMMddhhmmssSSS");//精确到毫秒        String pre=sdf.format(date);        String fileName = pre+fileFileName;        File destFile = new File("d:\\"+fileName);//放到哪里的路径+文件名        FileUtils.copyFile(file, destFile);                return SUCCESS;    }}

上传完成

 

 

*************************************************************************************

多个文件同时上传,Action类里面三个成员定义成数组,用数组来接收

package com.itnba.maya.controller;import java.io.File;import java.io.IOException;import org.apache.commons.io.FileUtils;import com.opensymphony.xwork2.ActionSupport;public class ShangchuanduoAction extends ActionSupport {    private File[] file;    private String[] fileFileName;    private String[] fileContentType;    public File[] getFile() {        return file;    }    public void setFile(File[] file) {        this.file = file;    }    public String[] getFileFileName() {        return fileFileName;    }    public void setFileFileName(String[] fileFileName) {        this.fileFileName = fileFileName;    }    public String[] getFileContentType() {        return fileContentType;    }    public void setFileContentType(String[] fileContentType) {        this.fileContentType = fileContentType;    }    public String input(){                return SUCCESS;    }    public String add() throws IOException{        //遍历数组        for(int i=0;i

 

jap页面:

<%@ page language="java" contentType="text/html; charset=utf-8"    pageEncoding="utf-8"%>
Insert title here

多文件上传

附件1:
附件2:
附件3:
附件4:
附件5:

上传成功

 

转载于:https://www.cnblogs.com/hq233/p/6589419.html

你可能感兴趣的文章
Android学习--网络通信之网络图片查看器
查看>>
[LeetCode] Excel Sheet Column Number
查看>>
安卓广播接收者
查看>>
999线监控
查看>>
Redis在python中的使用
查看>>
每日一小练——数值自乘递归解
查看>>
php 部分内置函数的使用
查看>>
字符串处理技巧
查看>>
归档及压缩命令
查看>>
Mybatis步骤
查看>>
WPF自定义控件之扩展原生控件
查看>>
《区块链100问》笔记整理——42~49问
查看>>
使用Jquery+EasyUI 进行框架项目开发案例讲解之二---用户管理源码分享
查看>>
深入理解计算机系统(1.4)---并发与并行、浅谈抽象
查看>>
函数依赖的公理化系统
查看>>
rabbitmq学习(四):利用rabbitmq实现远程rpc调用
查看>>
侯捷C++学习(二)
查看>>
EasyPlayer RTSP Android安卓播放器修复播放画面卡在第一帧bug
查看>>
web项目中全局常量的添加
查看>>
搬运工程 启动!
查看>>