どの Kotlin クラスでも、 format のパブリック プロパティごとに 1 つのメソッドが生成されるcomponentX()
ため、このクラスは次のようになります。
public data class Dog(public var name: String, public var age: Double)
Java では次のようなものと同等です。
public class Dog {
private String name;
private double age;
public Dog(@NotNull String name, @NotNull double age) {
// assign values
}
// Getters and setters for name and age
// toString(), equals(), and hashCode()
public String component1() { return name; }
public double component2() { return age; }
}
componentX()
これは、ジャクソンを各メソッドと見なし、各メソッドgetXxx()
を (逆) シリアル化ターゲットと見なすため、混乱します。
私がこれまでこれを回避してきた方法は、すべてのモデルを Java で作成することでしたが、これは好ましくありません。
つまり、componentX()
メソッドを無視するように ObjectMapper を構成するにはどうすればよいですか?