
jackson
Jacksonシリアライズの循環参照を止める
Jacksonを使用したJSONの出力で、オブジェクトが循環参照を起こしているような場合、これを止める方法についてのメモ。以下のように、JsonIdentityInfoアノテーションをクラスにつけるだけで良いです。これを使用することで、循環が検出された場合に、循環しているオブジェクトの内容を、ID文字列に置き換えてくれるようになります。JPAエンティティなどをそのままJSON出力したいような場合には、OneToMany,ManyToOneを使用したオブジェクトの参照で、このようなニーズが度々発生します。@Entity@JsonIdentityInfo(property="_id",generator=ObjectIdGenerators.UUIDGenerator::class)dataclassPerson(@Idvarid:String="",varname:String="",@On2018.01.25


