3
public class TestJacksonColor {
public static void main(String [] args) throws IOException {
ObjectMapper objectMapper = new ObjectMapper();
Color black = new Color(0, 0, 0);
String json = objectMapper.writeValueAsString(black);
Color backToObject = objectMapper.readValue(json, Color.class);
}
}
このコードでは、jackson objectmapperを使用してjava.awt.colorクラスをシリアル化しようとしています。結果のjson文字列を取得し、java.awt.colorクラスに逆直列化します。ただし、デシリアライズを実行すると、次のエラーが発生します。jacksonデシリアライザを使用してjava.awt.colorを逆シリアル化できません
をインスタンス化することができませんスレッド「メイン」com.fasterxml.jackson.databind.JsonMappingExceptionの例外:種類が見つかりません適切なコンストラクタ[単純型、クラスをjava.awt.Color]:JSONオブジェクトから
ありがとう:ここ
は、シリアライザ/デシリアライザのペアを定義し、
Color
オブジェクトを処理するモジュールを登録する例です!私のソリューションはあなたが作ったものと似ています。私はjackson互換ではないと思われる多くのawtクラスを使用していますが、それらのすべてのカスタムde/serializerを魅力的に動作させました。 –