Strut2 文件上传以及上传文件基本属性获得

本文详细解析了HTML文件中表单元素如何通过POST方法和multipart/form-data编码上传文件,并介绍了Java源码中实现文件上传的具体过程及注意事项。重点讨论了如何在Java中获取上传文件的类型、名称和内容,以及动态方法调用在Struts2框架中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HTML文件:

<html>
  <head>
    <title>page</title>
  </head>
  
  <body>
    <form action="demo/demo!demo" method="post" enctype="multipart/form-data">
    	<input type="file" name="up"/>
        <input type="submit" value="提交"/>
    </form>
  </body>
</html>

Java源码:

package cn.tonv.demo;

import java.io.File;

import com.opensymphony.xwork2.ActionSupport;

@SuppressWarnings("serial")
public class TestAction extends ActionSupport {
	//上传文件
	private File up;
	//上传文件的属性
	private String upContentType;
	//上传文件名
    private String upFileName;
	
	public String demo(){
		System.out.println(getUp().toString());
		System.out.println(getUpContentType());
		System.out.println(getUpFileName());
		return "succ";
	}

	public File getUp() {
		return up;
	}

	public void setUp(File up) {
		this.up = up;
	}

	public String getUpContentType() {
		return upContentType;
	}

	public void setUpContentType(String upContentType) {
		this.upContentType = upContentType;
	}

	public String getUpFileName() {
		return upFileName;
	}

	public void setUpFileName(String upFileName) {
		this.upFileName = upFileName;
	}
	
}

如上面Java源码中上传文件的名称up可以随意修改但ContentType和FileName前面的up必须与up的修改一致,否则上传文件的类型以及名字将无法获得。up后面的ContentType和FileName是固定写法不能修改。

demo/demo!demo发请求的方式是struts2的动态方法调用可以参考:struts2 动态方法调用

当我们得到上传的file以及file的名字和类型后就可以使用我们熟悉的文件流来操作文件了




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值