Привязка объектов / преобразование типов Spring MVC Generics

Я ищу способ обернуть свои модели или DTO универсальным классом, чтобы добавить логическое свойство selected и иметь возможность привязать объект в моем контроллере метода 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 для привязки моих опубликованных данных к моему расширенному универсальному объекту?

0
0
211
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Почему бы не использовать абстрактный базовый класс с выбранным свойством и не расширить его для ваших DTO?

Другие вопросы по теме