상세 컨텐츠

본문 제목

[안드로이드] Firebase Realtime Database RecyclerView 사용자 등록하는 방법

안드로이드

by aries574 2022. 3. 12. 22:10

본문


이번 시간에는 Firebase Realtime Database에

사용자 정보를 등록하는 방법을 알아보겠습니다. 

Firebase Realtime Database 설정부분은 아래 링크를

따라하시면 됩니다.

2022.03.09 - [안드로이드] - [안드로이드] Firebase 시작하기 실시간 데이터베이스 Realtime Database (간단한 데이터 읽기, 쓰기) part1

 

[안드로이드] Firebase 시작하기 실시간 데이터베이스 Realtime Database (간단한 데이터 읽기, 쓰기) part

이번 시간에는 Firebase를 통해 데이터베이스에 간단한 데이터를 쓰고 읽는 방법에 대하여 알아보겠습니다. 목차 1. 실행 화면 2. 프로젝트 만들기 3. 앱 만들기 4. 데이터 베이스 만들기 5. 라이브러

aries574.tistory.com


목차

1. 실행화면

2. 사용자 클래스 만들기

3. 데이터베이스 클래스 만들기

4. 메인 화면 구성 activity_main.xml

5. 메인 코드 구현 MainActivity.java


1. 실행화면

 

2. 사용자 클래스 만들기

2021.12.31 - [안드로이드] - [안드로이드 스튜디오] 자바 클래스 생성하는 방법

 

[안드로이드 스튜디오] 자바 클래스 생성하는 방법

이번 시간에는 안드로이드 스튜디오(AndroidStudio)에서 자바 클래스 생성하는 방법을 알아보겠습니다. 기본으로 안드로이드 스튜디오 프로젝트를 생성하면 아래 화면처럼 MainActivity가 기본으로 생

aries574.tistory.com

클래스명: User

 - 설명 -

 사용자 정보가 들어갈 클래스입니다. 

public class User {

    private String user_key; //키
    private String user_name; //이름
    private String user_age; //나이

    User(){

    }

    public User(String user_key, String user_name, String user_age) {
        this.user_key = user_key;
        this.user_name = user_name;
        this.user_age = user_age;
    }

    public String getUser_key() {
        return user_key;
    }

    public void setUser_key(String user_key) {
        this.user_key = user_key;
    }

    public String getUser_name() {
        return user_name;
    }

    public void setUser_name(String user_name) {
        this.user_name = user_name;
    }

    public String getUser_age() {
        return user_age;
    }

    public void setUser_age(String user_age) {
        this.user_age = user_age;
    }
}

 

3. 데이터베이스 클래스 만들기

  클래스명: DAOUser

 - 설명 - 

 데이터베이스 연결 기능을 구현한 클래스입니다. 

public class DAOUser {

    private DatabaseReference databaseReference;

    DAOUser(){

        FirebaseDatabase db = FirebaseDatabase.getInstance();
        databaseReference = db.getReference(User.class.getSimpleName());
    }


    //등록
    public Task<Void> add(User user){

        return databaseReference.push().setValue(user);
    }
}

 

 

4. 메인 화면 구성 activity_main.xml

 - 설명 - 

 이름과 나이를 입력할 에디트 텍스트와 사용자 정보

등록 기능의 버튼으로 구성되어 있습니다. 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical"
    tools:context=".MainActivity">

    <EditText
        android:id="@+id/name_edit"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="text"
        android:hint="이름" />

    <EditText
        android:id="@+id/age_edit"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="number"
        android:hint="나이" />

    <Button
        android:id="@+id/add_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:text="등록" />

</LinearLayout>

 

5. 메인 코드 구현 MainActivity.java

 - 설명 -

 1. 이름과 나이가 입력된 에디트 텍스트에서 값을 꺼내

 변수에 담는다. 

 2. 변수에 담은 정보를 사용자 정보 객체에 담아

 데이터베이스 호출 메서드에 넘겨 저장한다. 

 3. 성공 시에는 성공했다면 성공, 실패했다면

 실패했다는 알림을 띄어준다. 

public class MainActivity extends AppCompatActivity {

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            EditText name_edit = findViewById(R.id.name_edit);
            EditText age_edit = findViewById(R.id.age_edit);
            Button addBtn = findViewById(R.id.add_btn);

            DAOUser dao = new DAOUser();

            addBtn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {

                    //입력값 변수에 담기
                    String name = name_edit.getText().toString(); //이름
                    String age = age_edit.getText().toString(); // 나이

                    User user = new User("", name, age);

                    //데이터베이스 사용자 등록
                    dao.add(user).addOnSuccessListener(new OnSuccessListener<Void>() {
                        @Override
                        public void onSuccess(Void unused) {
                            Toast.makeText(getApplicationContext(), "성공", Toast.LENGTH_SHORT).show();

                            //입력창 초기화
                            name_edit.setText("");
                            age_edit.setText("");
                        }
                    }).addOnFailureListener(new OnFailureListener() {
                        @Override
                        public void onFailure(@NonNull Exception e) {
                            Toast.makeText(getApplicationContext(), "실패:" + e.getMessage(), Toast.LENGTH_SHORT).show();
                        }
                    });
                }//onClick
            });
        }//onCreate
}

2022.03.10 - [안드로이드] - [안드로이드] Firebase Realtime Database ListView JSON 읽기, 쓰기 part2

 

[안드로이드] Firebase Realtime Database ListView JSON 읽기, 쓰기 part2

이번 시간에는 Firebase Realtime Database에 데이터를 추가하고, 다시 호출해서 ListView를 통해 보여주는 읽기, 쓰기 예제를 만들어 보겠습니다. Firebase Realtime Database 설정은 아래 링크로 가셔서 따라..

aries574.tistory.com

2022.03.11 - [안드로이드] - [안드로이드] Firebase Realtime Database ListView JSON 수정, 삭제 part3

 

[안드로이드] Firebase Realtime Database ListView JSON 수정, 삭제 part3

이번 시간에는 Firebase Realtime Database에 저장된 데이터를 ListView에 보여주고 나서 아이템을 수정하고, 삭제하는 방법을 알아보겠습니다. 이전 포스팅에 이어하기 때문에 따라 하시려면 먼저 보시

aries574.tistory.com

2022.03.08 - [안드로이드] - [안드로이드] 달력 (DatePicker) 버튼(Button)으로 호출하는 방법

 

[안드로이드] 달력 (DatePicker) 버튼(Button) 으로 호출하는 방법

이번 시간에는 DatePicker 컴포넌트를 화면에 태그로 보여주는 방법이 아니라 버튼을 누르면 코드에서 호출 하는 방법을 알아보겠습니다. 목차 1. 실행 화면 2. 메인 화면 구성 activity_main.xml 3. 메인

aries574.tistory.com

 

반응형

관련글 더보기

댓글 영역