2012-01-23 26 views
6

Ben diğer iki Nesneler JSON Jackson Paylaşılan

benim nesneleri seri Jackson'a kullanmak ama benim paylaşılan nesne yerine referans daha yineleniyor bulduk tarafından referanstır bir nesne var başvurur. Nedeni anladığım kadarıyla Jackson sadece referans ile değil, değer olarak serileştirebiliyor.

Bazı önerilen çözümler için etrafa bakmadım.

Her türlü yardım takdir edilir.

akım Jackson Lib 1.8.3

cevap

5

Şu anda (1.9) Bunu işlemek için özel seri hale, deserializer, yazmak zorunda olacaktır. Nesne kimliğini ele almak için kullanıma hazır destek yoktur.

Java çerçevelerinden, nesne kimliklerini desteklemek için bildiğim tek şey XStream.

Değeri için, Jackson'ın destek eklemek için uzun süredir bir feature request var. Ve bunun 2.0 için çalıştığı makul bir şans var. Ama olsa bile, bir süre alacak (bir veya iki ay).

UPDATE (Nisan 2013): Diğer kabul edilen cevaba göre, bu özellik - @JsonIdentityInfo - gerçekten Jackson 2.0'a dahil edildi ve kullanılabilir. Özel (de) serileştiricilere gerek yok.

+0

Cevabınız için teşekkür ederim, ben özellik isteği gördün geliyor ama çok eski bir :(olduğu dua ediyordu bu yüzden bu cevap. Sanırım bir çözüm buldum, paylaşılan nesneyi referans olarak vereceğim ve referansı verdiğim zaman bağlantıya bağlayacağım. Tekrar teşekkürler, çok takdir ediyorum. – HKalsi

+0

Evet, yaşlı, çünkü 2.0 için uygulandı ve kullanıma sunuldu. o zamandan beri cevabımı güncelleyeceğim – StaxMan

İlgili konular