最初のアイテムが自分を持っている場合は
public class User {
int id;
String name;
public User(int id, String name){
this.id = id;
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
が次にあなたが
DatabaseReference dbRef = firebaseDatabase.getReference("YOUR_DB_NAME");
Query query = dbRef
.orderByChild("id")
.equalTo("ID_OF_THE_USER");
query.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot dataSnapshot1 : dataSnapshot.getChildren()) {
Log.d(TAG, dataSnapshot1.getKey() + " " + dataSnapshot1.getValue(Profile.class)
.toString());
updateUser(dataSnapshot1.getKey(),"ID_OF_THE_USER", "New_Name");
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
private void updateUser(DatabaseReference db,int key, String id, String name,) {
User user = new User(id, name);
Map<String, Object> postValues = post.toMap();
Map<String, Object> childUpdates = new HashMap<>();
childUpdates.put("/data/" + key, postValues);
db.updateChildren(childUpdates);
}
を更新したいDBオブジェクトが
....それはあなたを助けることを願っていますクラスを作成します自分のID、そのIDの下に保管しているのはなぜですか?このような構造では、あなたの更新は 'ref.child(id).setValue(...)'のように簡単になります。 –
私はちょうどjsonファイルを取得し、firebaseにアップロードしました。そしてfirebaseは私のデータのために独自のidを追加しました – d0pestar
データモデリングに関しては、JSONファイルをアップロードする以上のことをすることをお勧めします。たとえば、[NoSQLデータモデリング](https://highlyscalable.wordpress.com/2012/03/01/nosql-data-modeling-techniques/)と[Firebase for SQL開発者](https ://www.youtube.com/playlist?list = PL-K7zZEsYLlP-k-RKFa7RyNPa9_wCH2s)、 –