在网上找了好多资料,发现都不是自己想要的结果,最后在外国网站上找到了解决方法。struts2在action里file去接收,getName里既然是个.tmp的后缀文件,一时不知道怎么去获取这个文件类型。其实struts2都是在action里定义一个属性去接收html表单内容。现把关键代码附上。
public class UserAction extends ActionSupport {
private File myfile;//文件
private String myfileContentType; //文件类型
private String myfileFileName; //文件名称
public File getMyfile() {
return myfile;
}
public void setMyfile(File myfile) {
this.myfile = myfile;
}
public String getMyfileContentType() {
return myfileContentType;
}
public void setMyfileContentType(String myfileContentType) {
this.myfileContentType = myfileContentType;
}
public String getMyfileFileName() {
return myfileFileName;
}
public void setMyfileFileName(String myfileFileName) {
this.myfileFileName = myfileFileName;
}
}
哈哈,顺便把验证图片类型的js附上。利用的是正则表达式。经测试可以使用。
<script language="javascript">
function isPhoto()
{ var a=document.getElementById("myfile").value;
var reg2 = /^(\s|\S)+(jpg|gif|jpn)+$/;
return reg2.test(a);
}
本文介绍了一种在Struts2框架中实现文件上传的方法,并提供了一个具体的UserAction类实例。该类通过定义文件、文件类型及文件名属性来处理上传过程。此外,还附带了一个用于验证图片类型的JavaScript函数。
515

被折叠的 条评论
为什么被折叠?



