Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 백준
- 프로그래머스
- 개인공부
- 내일배움캠프
- 스파르타내일배움캠프WIL
- Python
- 스파르타내일배움캠프
- til
- java
- Spring
- 자바
- 중심사회
- 99일지
- 코딩테스트
- 컴퓨터개론
- 컴퓨터구조론 5판
- wil
- 부트캠프
- 스파르타내일배움캠프TIL
- 운영체제
- 소프트웨어
- 항해
- 국비
- Flutter
- 개발자스터디
- 개발자블로그
- AWS
- 99클럽
- MySQL
- 스파르타코딩클럽
Archives
- Today
- Total
컴공생의 발자취
[FireStore] 데이터 가져오기(Java) 본문
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 {
}
}
});
728x90
반응형
'💚 AndroidStudio' 카테고리의 다른 글
[AndroidStudio] Flutter 설치 (0) | 2023.03.06 |
---|---|
[AndroidStudio] AndroidStudio 설치 (0) | 2023.03.06 |
[AndroidStudio] 좋아요 싫어요 버튼 만들기 (0) | 2022.12.04 |
[AndroidStudio] 디자인 변경 (0) | 2022.11.30 |