首先要配置struts.xml 名字一定是这个,放在src目录下才生效
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="property" namespace="/prpperty" extends="struts-default">
<action name="property_*" class="star.july.c_property.PropertyAction" method="{1}">
<!-- 注入参数 -->
<!-- name中的名字要和action中的setSaveName保持一致,除了开头的字母为小写 -->
<param name="saveName">小年</param>
<param name="savePath">f:/testwork/</param>
<result name="success">/property.jsp</result> <span style="font-family: Arial, Helvetica, sans-serif;"><!-- 转发的页面 --></span>
</action>
</package>
</struts>
然后写Action类:
package star.july.c_property;
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
import com.opensymphony.xwork2.ActionSupport;
//注入参数
//继承ActionSupport,返回时可以使用常量,如:return SUCCESS
public class PropertyAction extends ActionSupport{
//自定义常量
private String saveName;
private String savePath;
//定义set方法
public void setSaveName(String name){
this.saveName=name;
}
public void setSavePath(String savePath) {
this.savePath = savePath;
}
public String add(){
System.out.println("接收参数!");
System.out.println(saveName);
return SUCCESS;
}
//文件上传
public String upload(){
try {
System.out.println("文件上传!");
String url = "F:\\testwork\\shopsys\\8745ab1e-c359-47b0-96c4-809258903789.jpg";
File f = new File(url);
FileUtils.copyFile(f, new File(savePath+f.getName()));
return SUCCESS;
} catch (IOException e) {
e.printStackTrace();
throw new RuntimeException(e);
}
}
}