私はデータのクラスを持っていると仮定し実装するクラスの値を取得する:このコードdata.propertiesを実行した後Firebase:地図<K, V>
class MyDataClass {
...
public Map<String, Object> properties = HashMap()
}
// later
MyDataClass data = snapshot.getValue(MyDataClass.class);
は、与えられたスナップショットでproperties
キーの下に存在するすべてのデータが含まれています。このコードdata.propertiesにはデータを実行していない後
class MyMap implements Map<String, Object> { ... }
class MyDataClass {
...
public MyMap properties = MyMap()
}
// later
MyDataClass data = snapshot.getValue(MyDataClass.class);
:私は私のカスタムマップの実装にproperties
フィールドの種類を変更したい何らかの理由で
。
カスタムマップの実装にデータを取得することすらできますか?
UPD:JSON私は
{
items: {
"id": {
"name": "name",
"properties": {
"simpleProp1": "value1",
"simpleProp2": "value2",
"simpleProp3": "value3",
"complexProp1": {
"subPop1": "subVal1"
...
}
}
}
}
}
感謝を読み取ろう!
なぜMyMapクラスを使用していますか?以下のようにMyDataClassを直接追加することができます。 'public class MyDataClass { public HashMap myData; public HashMap getMyData(){ return myData; } public void setMyData(HashMap myData){ this.myData = myData; } } –
ashish
あなたは私の質問を誤解しているようです。カスタムマップの実装を「プロパティ」に使用する必要があります。 Firebaseのsnapshot.getValue()メソッドでデータが設定されないのはなぜですか? – abond
エラーが発生しますか? –