Мы используем mapstruct в нашем проекте. Хотя он работает отлично для dto для объекта домена (скажем EmployeeDTO для EmployeeData с похожими свойствами) - нам нужно обработать входящую строку json. Мы пытаемся написать очень обобщенный преобразователь c, который отображает входящую строку json на объект java.
Допустим, у нас есть EmployeeDTO, подобный этому
{id: 1, name = "xxx"}, но он приходит в виде строки, и у меня есть mapmap mapper, таким образом
@Mapper
EmployerMapper()
{
EmployeeData toEmployeeFromJsonString( String empString} ;// where empString is a jsonString
}
он не работает должным образом, и я не получаю соответствующий объект, созданный с нужным свойством из строки json (я также пробовал с jsonobject, но это тоже не работает)
Причина почему мы не можем указать конкретные c DTO, потому что мы хотим иметь слабую связь между микросервисом Сотрудника и остальными микросервисами (есть несколько), mapstruct не создает подходящие методы получения и установки, и может быть больше свойств в DTO, который нас не волнует в этом микросервисе. 1. Есть ли поддержка json объектов непосредственно в mapstruct? 2. Если я улучшу его с помощью поддержки GSON, как я могу интегрировать его с mapstruct, чтобы у меня был только один способ отображения в моем продукте.