пружинный полиморфизм @modelattribute

У меня есть два конкретных класса: Person1 и Person2, расширяющие Person. Я хочу, чтобы весенняя форма jsp создавала Person1 или Person2.

public abstract class Person{


}


public class Person1 extends Person{

}

public class Person2 extends Person{

}

У меня есть поле в html-форме, описывающее тип класса (Person1 или Person2). Как я могу автоматически создать человека с помощью аннотации @ModelAttribute?

public String create(@ModelAttribute Person person){

   // person here can be instance of Person1 or Person2
   ...
}

person Dariush Jafari    schedule 08.02.2017    source источник
comment
У вас может быть два метода в контроллере — один с Person1 и второй с Person2 как @ModelAttribute — и просто вызвать общий метод controllerStuff(Person person). Это просто обходной путь, я уверен, что есть лучшее решение   -  person nowszy94    schedule 08.02.2017
comment
этот вопрос может помочь   -  person Sergio    schedule 08.02.2017