Я использовал ReflectionToStringBuilder для сериализации объекта для ведения журнала. Но у нас возникла проблема, когда он не печатает полные объекты. Как и в случае следующего случайСериализация объектов Java для ведения журнала
GetTimeBlocksOutput tbout = new GetTimeBlocksOutput();
TimeBlock tb = new TimeBlock();
tb.setAvailable(true);
List<TimeBlock> tbList = new ArrayList<TimeBlock>();
tbList.add(tb);
tbout.setTimeBlocks(tbList);
System.out.println(ReflectionToStringBuilder.toString(tbout));
Он печатает
[email protected][timeBlocks [[email protected]]]
Есть ли простой способ иметь сериализованный объект для входа цели? в основном что-то из коробки без необходимости ручного изменения объекта для печати
Json serializers являются одним из вариантов, но
- они должны быть использованы для таких случаев?
- Учитывая, что сериализация Json может вызывать исключение. Является ли их простой библиотекой, которая дает простой метод использования для достижения этой задачи?
В чем причина переопределения .toString() непрактична? – Compass
@Compass не может рассказать без каких-либо подробностей из OP, но вполне возможно, что у них нет возможности модифицировать рассматриваемый класс. – avojak
@avojak, если это проблема, тогда я думаю, что вспомогательный метод, который запускает всю публику, попадает в String, будет более жизнеспособным вариантом. Использование отражения для выхода из закрытого класса - это бандайда. – Compass