java formfile_基于Struts文件上传(FormFile)详解

struts中formfile用于文件进行上传

1.在jsp文件中进行定义

名字:

头像:

2.在form表单中定义formfile

/*

* generated by myeclipse struts

* template path: templates/java/javaclass.vtl

*/

package com.yourcompany.struts.form;

import javax.servlet.http.httpservletrequest;

import org.apache.struts.action.actionform;

import org.apache.struts.action.actionmapping;

import org.apache.struts.upload.formfile;

/**

* myeclipse struts

* creation date: 08-24-2017

*

* xdoclet definition:

* @struts.form name="userform"

*/

public class userform extends actionform {

/*

* generated methods

*/

private string username;

private formfile file;

public string getusername() {

return username;

}

public void setusername(string username) {

this.username = username;

}

public formfile getfile() {

return file;

}

public void setfile(formfile file) {

this.file = file;

}

}

3.利用struts文件进行关联form,关联以后

1)利用表单实例进行获取formfile实例,在获取以后,我们可以通过formfile获取上传文件的各种信息

userform userform = (userform) form;

string username = userform.getusername();

formfile file = userform.getfile();

//通过formfile可以获取关于用户上传文件的各种信息

//用于获取文件名字

string filename = file.getfilename();

//用于获取文件大小

int filesize = file.getfilesize();

2)通过formfile实例获取输入流,创建一个输出流,并且在代码中获取tomcat服务器的绝对路径

try {

//获取输入流

is = file.getinputstream();

//得到输出流

//1.得到file文件夹,上传到tomcat服务器后的绝对路径(file文件为新创建的文件夹)

string filepath = this.getservlet().getservletcontext().getrealpath("/file");

//两个"//"的其中一个"/"为转义符

os=new fileoutputstream(filepath+"\\"+filename);

int len=0;//表示读取的字节

//做一个缓存,防止文件过大而造成错误

byte[] buff=new byte[1024];

while((len=is.read(buff))!=-1)

{

os.write(buff,0,len);

}

is.close();

os.close();

}

以上这篇基于struts文件上传(formfile)详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持萬仟网。

希望与广大网友互动??

点此进行留言吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值