728x90
반응형
프로젝트를 하면서 데이터 저장을 FireStore을 사용했다.
안드로이드 스튜디오와 자바를 처음 사용했기에 사용함에 있어서 어려움이 있었다.
FireStore는 컬렉션, 문서, 필드 이렇게 세 종류로 나뉘어 있어서 가져오는 방식이 각기 달랐다.
내가 가져오고 싶은 것과 가져온 데이터가 다르기도 하고, 다양한 일이 있었다.
앞으로의 프로젝트도 FireStore을 사용할 수 있기에 내가 찾아봤던 방법을 정리하고자 한다.
사용한 사진은 Firestore Database에 들어가면 볼 수 있는 화면을 캡처하여 사용했다.
컬렉션
: 특정 컬렉션(blackposts) 에 있는 모든 문서를 가져오고 싶을 때 사용한다.
//파이어스토어에 접근하기 위한 객체를 생성한다.
private static FirebaseFirestore db = FirebaseFirestore.getInstance();
//CollectionReference 는 파이어스토어의 컬렉션을 참조하는 객체다.
CollectionReference productRef = db.collection("컬렉션이름");
//get()을 통해서 해당 컬렉션의 정보를 가져온다.
productRef.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
//작업이 성공적으로 마쳤을때
if (task.isSuccessful()) {
//컬렉션 아래에 있는 모든 정보를 가져온다.
for (QueryDocumentSnapshot document : task.getResult()) {
//document.getData() or document.getId() 등등 여러 방법으로
//데이터를 가져올 수 있다.
}
//그렇지 않을때
} else {
}
}
});
문서
: 특정 문서(t13ev0~) 의 모든 필드를 가져오고 싶을 때 사용한다.
//파이어스토어에 접근하기 위한 객체를 생성한다.
private static FirebaseFirestore db = FirebaseFirestore.getInstance();
//CollectionReference 는 파이어스토어의 컬렉션을 참조하는 객체다.
DocumentReference productRef = db.collection("컬렉션이름").document("문서이름");
//get()을 통해서 해당 문서의 정보를 가져온다.
productRef.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
//작업이 성공적으로 마쳤을때
if (task.isSuccessful()) {
//문서의 데이터를 담을 DocumentSnapshot 에 작업의 결과를 담는다.
DocumentSnapshot document = task.getResult();
//그렇지 않을때
} else {
}
}
});
필드에 있는 컬렉션 참조
: 특정 필드(contents)에 있는 정보를 가져오기 위해 사용한다.
//파이어스토어에 접근하기 위한 객체를 생성한다.
private static FirebaseFirestore db = FirebaseFirestore.getInstance();
//CollectionReference 는 파이어스토어의 컬렉션을 참조하는 객체다.
CollectionReference productRef = db.collection("컬렉션이름").document("문서이름").collection("컬렉션이름");
//get()을 통해서 해당 컬렉션의 정보를 가져온다.
productRef.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
//작업이 성공적으로 마쳤을때
if (task.isSuccessful()) {
//컬렉션 아래에 있는 모든 정보를 가져온다.
for (QueryDocumentSnapshot document : task.getResult()) {
//document.getData() or document.getId() 등등 여러 방법으로
//데이터를 가져올 수 있다.
}
//그렇지 않을때
} else {
}
}
});
FireStore 데이터 가져오기
FireStroe 는 클라우드 방식의 데이터베이스를 사용하기 쉽게 제공되는 DB 다. 소유한 서버, DB가 없다면 저렴한 가격으로 대여할 수 있는 좋은 서비스다. FireStore 에는 크게 컬렉션 , 문서 , 필드로
choi-dev.tistory.com
728x90
반응형
'💚 AndroidStudio' 카테고리의 다른 글
[AndroidStudio] Flutter 설치 (0) | 2023.03.06 |
---|---|
[AndroidStudio] AndroidStudio 설치 (0) | 2023.03.06 |
[AndroidStudio] 좋아요 싫어요 버튼 만들기 (0) | 2022.12.04 |
[AndroidStudio] 디자인 변경 (0) | 2022.11.30 |