gpt4 book ai didi

java - Struts 2中使用ModelDriven上传文件Action类

转载 作者:行者123 更新时间:2023-11-30 03:07:07 25 4
gpt4 key购买 nike

我正在学习 Struts 2 并遇到一个问题:无法在实现 ModelDrivenActionClass 中上传文件

产品.java

    public class Product {
String name, image;

public Product() {
}

public Product(String name, String image) {
super();
this.name = name;
this.image = image;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getImage() {
return image;
}

public void setImage(String image) {
this.image = image;
}
}

ProductAction.java

    public class ProductAction extends ActionSupport implements ModelDriven<Product> {

private static final long serialVersionUID = -5538774764479904797L;

File image;

public void setImage(File file) {
System.out.println("SET IMAGE");
}

public String submitPost() throws Exception {
System.out.println(p.getName());
System.out.println("POST");
return SUCCESS;
}

Product p = new Product();

@Override
public Product getModel() {
return p;
}

}

我想在 ProductAction 中上传。但如果 ProductAction 实现 ModelDriven,则不会调用 setImage() 方法,并且如果 ProductAction 未实现 >ModelDriven,工作正常。如何解决?

最佳答案

image的类型更改为File和getters/setters。当您使用 ModelDriven 时,您不需要使用操作属性。操作类也称为 Controller ,不需要保留状态。 Struts 将您的模型推送到 valueStack 的顶部,然后用请求参数填充它。

String name;
File image;
//getters and setters

关于java - Struts 2中使用ModelDriven上传文件Action类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34480993/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com