У меня есть различные наборы объектов Java, некоторые из них pojos, сгенерированные из инструментов JAXB, некоторые из них - доменные классы и т. Д. В большом приложении мне нужно получить данные из одного набора объектов и поместить в другой набор объектов.которые имеют разные возможности для использования данных.
Существуют различные способы сделать это: рамки отображения объектов являются очевидным выбором.Тем не менее, большинство этих фреймворков с твердой базой кода и сообществом используют отражение. (Например, dozer)
Я использовал комбинацию адаптеров, которые принимают pojos и более сложные классы java для шаблона посетителя, поэтомучто посетитель, идущий по адаптеру, проходит по одному набору объектов и в процессе создает другой набор объектов (объекты обычно имеют родительский / дочерний / древовидный тип ссылок), особенно когда используется передача по ссылке, а не создание новых строк и т. д., это должен быть самый быстрый доступный метод.
Можете ли вы придумать какой-нибудь другой метод?Какая-то сериализация в байтовый массив в памяти, а затем десериализация?Могут ли они превзойти копии, основанные на посетителях, с точки зрения производительности?Я несправедлив по отношению к подходам, основанным на рефлексии, таких как Dozer?Это ключевая операция в приложении, поэтому любые улучшения могут значительно улучшить общую производительность.