前提
Java SE 11を使用して、Webアプリを作成しています。
Entityとして用意された大量のカスタムクラスは、共通インターフェイスを実装しています。本Webアプリは、Controller層にJSONを引数に取るエントリーポイントが定義されており、そこには大量のカスタムクラスのいづれかのクラス型オブジェクトが入力されます。また、カスタムクラスの種類を判別するユニークなIDも付与されます。
json
1// データ構造のサンプル 2{ 3 "id" : "1" 4 , "data" : { 5 "hoge" : "huga" 6 } 7}
実現したいこと
JSONの中に存在する共通インターフェイス型で受け取った入力値を、適切なカスタムクラスにダウンキャストしたいです。
試したこと
idをkeyに長い分岐を書いて(Factoryパターンのつもりです)、マッチしたidを満たすクラス(Class<?>)を返却する処理によってClass<?>を取得するところまではできました。この後は、Class<?>を使用して以下のような記述する想定ですが、その過程がわかりません。。。。そもそもClass<?>を取得することが間違っているのでしょうか。よろしくお願いします。
Java
1// Class<?>がCustomClass型の場合 2CustomClass customClass = CustomClass.class.cast(入力値);
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/06/26 22:25