変更できないサードパーティからの JSON データを受信するという非常にユニークな使用例があります。
{
"Information": {
"mobile": {
"name": "Mobile Application",
"classType" : "A"
},
"desktop": {
"name": "Desktop Application",
"classType" : "B"
},
"tablet": {
"name": "Tablet Application",
"classType" : "A"
}
}
}
次に、このデータを使用する複数のコンポーネントがあります。JSON 全体を提供するのではなく、これらのコンポーネントをより扱いやすい Java オブジェクトとして提供したいと考えています。そこで、jsonschema2pojo ツールを使用して、この JSON から JAVA オブジェクトを作成します。
さて、問題は、このライブラリを使用すると、モバイル、デスクトップ、タブレット用に 3 つの異なる Java ファイルが作成されることです (これは正しい方法です) が、この情報を使用するコンポーネントは、モバイル用に異なる方法で処理するのではなく、ジェネリック クラスを必要とします。デスクトップとタブレット。また、より多くのデバイスを追加でき、特定のクラスを保持したくないコンポーネントがたくさんあるためです。モバイル/デスクトップまたはタブレットの情報を保存できるフィールド deviceType を持つ一般的な「デバイス」を 3P が提供してくれることを望みますが、それには多くの時間がかかります。その間、あなたが考えることができる解決策はありますか?