Привет!
Иногда возникает необходимость посмотреть что же находится внутри моего объекта и вывести это в лог.
Это можно сделать с помощью вот такой микро библиотеки
http://code.google.com/p/jbeandumer/
Пример использования.
Dumper dmpr = new Dumper();
System.out.println(dmpr.dump(new Date()));
на выходе
java.util.Date{
cdate : null
fastTime : 1218288272098
}
или
Dumper dmpr = new Dumper();
System.out.println(dmpr.dump(new GregorianCalendar()));
java.util.GregorianCalendar{
areAllFieldsSet : true
areFieldsSet : true
cachedFixedDate : 733276
calsys : sun.util.calendar.Gregorian{
eras : null
}
........
nextStamp : 2
originalFields : null
serialVersionOnStream : 1
sharedZone : true
stamp : 17:[
1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1,
1
]
time : 1219415349694
zone : cycle ref obj#3
zoneOffsets : 2:[
10800000, 3600000
]
}
Здравствуйте, Denis Tsyplakov, Вы писали:
DT>Привет!
DT> Иногда возникает необходимость посмотреть что же находится внутри моего объекта и вывести это в лог.
DT> Это можно сделать с помощью вот такой микро библиотеки
DT>http://code.google.com/p/jbeandumer/
ОГРОМНОЕ спасибо.
А исходниками можно посмотреть?
Здравствуйте, Chanting Wolf, Вы писали:
CW>Здравствуйте, Denis Tsyplakov, Вы писали:
DT>>Привет!
DT>> Иногда возникает необходимость посмотреть что же находится внутри моего объекта и вывести это в лог.
DT>> Это можно сделать с помощью вот такой микро библиотеки
DT>>http://code.google.com/p/jbeandumer/
CW>ОГРОМНОЕ спасибо.
CW>А исходниками можно посмотреть?
http://code.google.com/p/jbeandumer/source/checkout
# Non-members may check out a read-only working copy anonymously over HTTP.
svn checkout http://jbeandumer.googlecode.com/svn/trunk/ jbeandumer-read-only
Здравствуйте, Chanting Wolf, Вы писали:
DT>> Иногда возникает необходимость посмотреть что же находится внутри моего объекта и вывести это в лог.
DT>> Это можно сделать с помощью вот такой микро библиотеки
DT>>http://code.google.com/p/jbeandumer/
CW>А исходниками можно посмотреть?
http://jbeandumer.googlecode.com/files/jbeandumper.1.0.with.src.zip
для тех кому лень или неудобно прямо сейчас возиться с svn.
Денис
PS Задним умом — надо бы код почистить чтобы стыдно не было.
PPS Надо всегда писать так чтобы не было стыдно за код
Здравствуйте, Denis Tsyplakov, Вы писали:
Не смотрел еще

Но уже вопрос — насколько глубоко библиотека полезет во вложенные объекты? А что с циклическими и рекурсивными ссылками?
Здравствуйте, Denis Tsyplakov, Вы писали:
DT>Привет!
DT> Иногда возникает необходимость посмотреть что же находится внутри моего объекта и вывести это в лог.
DT> Это можно сделать с помощью вот такой микро библиотеки
DT>http://code.google.com/p/jbeandumer/
DT>[/code]
Я испольую
ReflectionToStringBuilder
Здравствуйте, Trean, Вы писали:
T>Здравствуйте, Denis Tsyplakov, Вы писали:
DT>>Привет!
DT>> Иногда возникает необходимость посмотреть что же находится внутри моего объекта и вывести это в лог.
DT>> Это можно сделать с помощью вот такой микро библиотеки
DT>>http://code.google.com/p/jbeandumer/
T>Я испольую ReflectionToStringBuilder
Хм не знал про такую Хотя и искал вроде бы. Ну что сделано то, сделано
Здравствуйте, Denis Tsyplakov, Вы писали:
DT>http://code.google.com/p/jbeandumer/
Спасибо всем заинтересовавшимся, пофиксил баг, улучшил формат дампа в v1.3
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, Denis Tsyplakov, Вы писали:
DT>>http://code.google.com/p/jbeandumer/
А> Спасибо всем заинтересовавшимся, пофиксил баг, улучшил формат дампа в v1.3
Обновилось до версии 1.4.х обкаталось в боевых условиях. Важное отличие от ближайших аналогов — умеет дампить в потом на лету не создавая строку в промежутке — как результат можно задампить ОЧЕНЬ большой объект не раскуя поймать OutOfMemory. Умеет красиво дампить массивы, кастомизируется дамп циклических ссылок.