繁体   English   中英

Spring MVC泛型对象绑定/类型转换

[英]Spring MVC Generics Object Binding/Type Conversion

我正在寻找一种使用通用类包装模型或DTO的方法,以添加“选定的”布尔属性,并能够在POST方法控制器中绑定对象。

像这样:

public class RowForm<T> implements Serializable {

    private static final long serialVersionUID = 1L;
    private T model;
    private Boolean selected=false;

    public RowForm() {
        super();
    }

    public RowForm(T model) {
        super();
        this.model = model;
    }

    public T getModel() {
        return model;
    }

    public void setModel(T model) {
        this.model = model;
    }

    public Boolean getSelected() {
        return selected;
    }

    public void setSelected(Boolean selected) {
        this.selected = selected;
    }

}


public class ProductsForm implements Serializable{

    private static final long serialVersionUID = 1L;
    private RowForm<Product> row;

//...other stuff and getters/setters
}

并像这样使用它:

    @PostMapping ("/postProduct")
    public String POSTproduct(Model model, @ModelAttribute ProductsForm pf) 
    {
    ....
    }

但是我坚持转换...

当我调用pf.getRow()它返回一个普通Object ,而不是RowForm<Product>

如何实现ConversionService / PropertyEditor将发布的数据绑定到扩展的通用对象?

为什么不使用带有选定属性的抽象基类,并为您的DTO扩展它呢?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM