2015-10-12 2 views
2

У меня есть абстрактный класс с именем AbstractDTO. Моя цель состоит в том, чтобы иметь метод adnotated с RequestMapping «/ info», который получает в качестве параметра AbstractDTO, но распознает в методе конкретный класс объекта, отправленного как параметр, что-то вроде «FirstDTO». Как я могу это сделать?Абстрактный класс как параметры в методе Spring

+0

Ваш вопрос немного неясен ... Вы хотите отдать полученный экземпляр asbtract dto внутри своего метода контроллера? Вы хотите десериализоваться на конкретный экземпляр dd, не зная, какой именно класс? Просьба уточнить. –

+0

Я хочу десериализоваться на конкретный экземпляр dto, не зная, каков конкретный класс. – Bianca

ответ

1

Я не пробовал, но для выполнения этой работы вы должны создать bean-элемент RequestMappingHandlerAdapter, на котором вы можете установить custom argument resolver.

Этот аргумент resolver реализует интерфейс HandlerMethodArgumentResolver и заботится о преобразовании того, что получено через HTTP, к экземпляру соответствующего подкласса AbstractDTO.

Для получения дополнительной информации см. Defining @RequestMapping handler methods в справочной документации по Spring Framework и документах API, с которыми я связан выше.

Смежные вопросы