В моем приложении Spring / Hibernate есть иерархия классов моделей.
При отправке формы POST в контроллер Spring MVC, существует ли какой-либо стандартный способ указания типа отправляемого объекта, поэтому Spring может создать экземпляр правильного подкласса типа, объявленного в @ModelAttribute или @RequestParam принимающего метода?
Например:
public abstract class Product {...}
public class Album extends Product {...}
public class Single extends Product {...}
//Meanwhile, in the controller...
@RequestMapping("/submit.html")
public ModelAndView addProduct(@ModelAttribute("product") @Valid Product product, BindingResult bindingResult, Model model)
{
...//Do stuff, and get either an Album or Single
}
Джексон может десериализовать JSON как определенный подтип, используя аннотацию @JsonTypeInfo. Я надеюсь, что Spring может сделать то же самое.