网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Struts2实现多文件上传功能

前台form 表单:设置method=post,enctype=multipart/form-data。

成都创新互联公司是一家专注于网站建设、成都做网站与策划设计,和田县网站建设哪家好?成都创新互联公司做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:和田县等地区。和田县做网站价格咨询:18980820575

struts2在原有的上传解析器继承上做了进一步封装,更进一步简化了文件上传。

Action需要使用3个属性来封装该文件域的信息:

(1)类型为File的*属性封装了该文件域对应的文件内容;
(2)类型为String的***FileName属性封装了该文件域对应的文件的文件类型;
(3)类型为String的***ContentType属性封装了该文件域对应的文件的类型。

具体实现:

新建web项目

Struts2实现多文件上传功能

添加struts2相关包
myeclipse可直接下载,右击项目,如下。

Struts2实现多文件上传功能

前台

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

 
  
    
    

  
 

配置web.xml



 UploadFile
 
  struts2
  org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
 
 
  struts2
  *.action
 

配置struts.xml




  
  
  
  

  
    
    /index.jsp
    
    
  

后台代码

public class UploadAction extends ActionSupport{
  private List upload;
  private List uploadContentType;
  private List uploadFileName;

  public List getUpload() {
    return upload;
  }

  public void setUpload(List upload) {
    this.upload = upload;
  }

  public List getUploadContentType() {
    return uploadContentType;
  }

  public void setUploadContentType(List uploadContentType) {
    this.uploadContentType = uploadContentType;
  }

  public List getUploadFileName() {
    return uploadFileName;
  }

  public void setUploadFileName(List uploadFileName) {
    this.uploadFileName = uploadFileName;
  }

  @Override
  public String execute() throws Exception {
    //文件保存路径
    String path = ServletActionContext.getServletContext().getRealPath("/images");
    File file = new File(path);
    //不存在则创建
    if(!file.exists()){
      file.mkdir();
    }
    //循环将文件上传到指定路径
    for(int i = 0; i< upload.size(); i++){
      FileUtils.copyFile(upload.get(i), new File(file,uploadFileName.get(i)));
    }
    return SUCCESS;
  }

结果如下

Struts2实现多文件上传功能

Struts2实现多文件上传功能

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。


名称栏目:Struts2实现多文件上传功能
标题来源:http://bjjierui.cn/article/pchodo.html

其他资讯