본문 바로가기

안드로이드/자바

[안드로이드/Android] Firebase Database 데이터업데이트

반응형

관련 포스팅

Firebase Database 시작하기

Firebase Database 데이터 검색



 

이번 포스팅도 Firebase Database를 주제로 데이터 업데이트에 관련된 내용입니다.

데이터를 업데이트 하는 방법은 다음과 같이 2가지가 있습니다.

1. 데이터 입력과 동일한 방법

2. 업데이트 메소드를 이용한 방법 





1. 데이터 입력과 동일한 방법


id에 해당하는 값을 'ChattingData'클래스 실질적 데이터를 변경해서 보내면 매칭된 id로 값이 변경되어 입력됩니다.


Firebase.getInstance().getDatabaseReference().child("id").setValue(ChattingData);

ChattingData 클래스 구조 


2. 업데이트 메소드를 이용한 방법

 

다른 데이터 베이스 모듈과 동일하게 업데이트 메소드를 제공하지만, firebase 특성상 하위 노드 개념의 Children 의 키에 할당된 값을 변경하는 구조 입니다.

변경 하고자 원하는 값과 키를 해시맵 형태로 담아서 보냅니다.

그러면 'id'의 자식 노드중 'key'에 해당하는 값이 'value'로 변경됩니다.


Map<String, Object> taskMap = new HashMap<String, Object>();
taskMap.put(key, value);
databaseReference.child("id").updateChildren(taskMap);


1). 단순 값 변경

 

각 다른 키의 자식 노드의 값을 변경할 수 있습니다.


Map<String, Object> taskMap = new HashMap<String, Object>();
taskMap.put("typeA/name", "typeA");
taskMap.put("typeB/name", "typeB");

databaseReference.updateChildren(taskMap);



2). 구조체로 변경

 

value에 단순 string이 아닌 클래스형태를 집어 넣을 경우 데이터 구조 자체가 변경됩니다.


Map<String, Object> taskMap = new HashMap<String, Object>();
taskMap.put("typeA/name", new PeopleData("typeA1","test",null));
taskMap.put("typeB/name", new PeopleData("typeB1","test2","test3"));

databaseReference.updateChildren(taskMap);




이상 firebase Database에 관한 포스팅을 마치겠습니다.

더이상 firebase database에 관련된 포스팅은 없을것 같습니다.

더 좋은 포스팅으로 찾아 뵙겠습니다. 


※필자 본인을 위한 포스팅으로써 다소 미흡할 수 있습니다. 그래도 궁금하신점이 있으시다면 최대한 도움을 드리도록 하겠습니다.




반응형