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