私は依存関係を使用しています:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
次のオブジェクトがあります。
public Class X {
private String a;
private String b;
private Y y;
}
public Class Y {
private String c;
private String d;
}
また、クラス X のコンテンツを再帰的にログに記録して、クラス Y も取得し、JSON スタイルを使用する必要があります。それが私の目標であり、これがこの質問の目的です。
アプローチ 1:
ToStringStyle style = ToStringStyle.JSON_STYLE;
LOGGER.debug(ReflectionToStringBuilder.toString(new X(), style, false, false));
アプローチ 1 の結果:
{"a":"<a>","b":"<b>","y": com.<packages>.y@<hash>}
アプローチ 2:
RecursiveToStringStyle style = new RecursiveToStringStyle();
LOGGER.debug(ReflectionToStringBuilder.toString(new X(), style, false, false));
アプローチ 2 の結果:
[com.<packages>.x@<hash>[a=<a>,b=<b>,y=com.<packages>.y@<hash>[c=<c>,d=<d>]]
成功したアプローチ:
`Merge of Approach 1 and Approach 2` but how to achieve this?
成功したアプローチの結果 (私の目標):
{"a":"<a>","b":"<b>","y":{"c":"<c>","d":"<d>"}}