文档章节

Struts2.x+FileUpload实现单文件上传

藍色的海
 藍色的海
发布于 2012/04/07 12:43
字数 400
阅读 271
收藏 0

选择所要上传的文件

upload.jsp

 

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@ taglib prefix="s" uri="/struts-tags" %>   <%//引入struts2标签  %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
  <table align="center" width="50%">
   <tr>
    <td>
   <% // <s:fielderror cssStyle="color:red"/>%>
    </td>
   </tr>
  </table>
  
  <s:form action="upload" theme="simple" enctype="multipart/form-data"> <%//设置form表单的enctype属性为multipart/form-data  %>
    <table align="center" width="50%" border="1">
      <tr>
	    <td>file</td>
	    <td><s:file name="file"></s:file>
	  </tr>			
	  <tr>
	    <td><s:submit value="submit"></s:submit></td>
	    <td><s:reset value="reset"></s:reset></td>
	  </tr>			
    </table>
  </s:form>
</body>
</html>

实现文件上传功能

UploadAction.java

 

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;


import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class UploadAction extends ActionSupport{
private File file;      //创建file属性
private String fileFileName;   //创建fileFileName属性,代表文件名称
private String fileContentType;  //创建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 execute() throws Exception
{
	
		InputStream is = new FileInputStream(file);

		String root = "E:/shang";  //设置上传的路径

		File destFile = new File(root, this.getFileFileName()); //destFile文件:输出流的目的文件

		OutputStream os = new FileOutputStream(destFile);       //os文件:关于destFile文件的输出流

		byte[] buffer = new byte[400];  //buffer字节数组:实现输入流与输出流的转换

		int length = 0;

		while ((length = is.read(buffer)) > 0)
		{
			os.write(buffer, 0, length);
		}

		is.close();

		os.close();
	

	return SUCCESS;

  }
}

 配置struts.xml 文件

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
    <struts>
        <!-- 声明包 -->
    <package name="myPackage" extends="struts-default">
    	<!-- 访问首页 -->
        <action name="upload" class="com.lyq.upload.UploadAction">
            <result>uploadResult.jsp</result>
        </action>
        </package>
    </struts>

© 著作权归作者所有

藍色的海
粉丝 3
博文 19
码字总数 7205
作品 0
广州
其他
私信 提问
v-uploader v1.8.0 发布,支持预览、拖拽的上传插件

基于 Vue2 的 v-uploader v1.8.0 发布,更新内容: 增加部分参数允许在插件安装时进行全局设置 修改参数设置方式,从参数集对象的方式更换为单属性设置 重构、精简部分实现代码 修改插件部分...

TerryZ
2018/09/14
1K
0
Struts2实现文件上传和下载

在做B/S系统时,通常会涉及到上传文件和下载文件,在没接struts2框架之前,我们都是使用apache下面的commons子项目的FileUpload组件来进行文件的上传,但是那样做的话,代码看起来比较繁琐,...

颖辉小居
2015/11/26
58
0
SpringMVC 单文件上传与多文件上传

一、简述 一个javaWeb项目中,文件上传功能几乎是必不可少的,本人在项目开发中也时常会遇到,以前也没怎么去理它,今天有空学习了一下这方面的知识,于是便将本人学到的SpringMVC中单文件与...

CSDN_LQR
2017/06/22
0
0
iOS--React Native网络请求插件

一:介绍 React Native (简称RN)是Facebook于2015年4月开源的跨平台移动应用开发框架,是Facebook早先开源的JS框架 React 在原生移动应用平台的衍生产物,目前支持iOS和安卓两大平台。RN使用...

展菲
2018/12/13
0
0
高可用的Spring FTP上传下载工具类(已解决上传过程常见问题)

前言 最近在项目中需要和ftp服务器进行交互,在网上找了一下关于ftp上传下载的工具类,大致有两种。   第一种是单例模式的类。   第二种是另外定义一个Service,直接通过Service来实现f...

宇的季节
2017/12/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Hadoop集群搭建-05安装配置YARN

Hadoop集群搭建-04安装配置HDFS Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hadoop集群搭建-01前期准备 先保证集群5台虚拟机, nn1 nn2 s1 s2 s3 hadoop 是 是 是 ...

虚拟世界的懒猫
今天
10
0
聊聊spring cloud的ConsulServiceRegistry

序 本文主要研究一下spring cloud的ConsulServiceRegistry ServiceRegistry spring-cloud-commons-2.1.2.RELEASE-sources.jar!/org/springframework/cloud/client/serviceregistry/ServiceR......

go4it
昨天
8
0
Nextjs 学习 —— hooks

22

lemos
昨天
6
0
如何在spring mvc restful接口中定制化类型转换和格式化

1.痛点 最近小胖哥搞了个小程序,有几个spring mvc 接口传递了时间,时间用java 8 time 相关的api 来直接接收: 当使用根据ISO 8601格式化的参数向任何这些方法发送POST请求时,报出了如下异...

码农小胖哥
昨天
19
0
docker日志监控

日志处理机制 我们先来了解一下docker日志处理的机制,当启动一个容器的时候,它其实是docker daemon的一个子进程,docker daemon可以拿到你容器里面进程的标准输出,拿到标准输出后,它会通...

爱宝贝丶
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部