Introduction to Realm Database for Android #2 (Realm write operations)

이봐 요, 사람들은 마지막 비디오에서 우리가 영역 데이터베이스에 대해 이야기하고 어떻게 개발자, 특히 모바일 개발자에게 도움이됩니다 나는 안드로이드 개발을 전문으로하고 매일 Realm을 사용합니다

이 비디오에서 우리가 얼마나 환상적인 Realm인지 알기 위해이 튜토리얼을 진행합니다 응용 프로그램에 Realm을 통합하는 방법에 대해 이야기 할 것입니다 어떻게 데이터베이스 디자인을 빌드하고 렐름은 보통 평범한 오래된 자바를 사용합니다 데이터베이스에 대한 객체 설계 그래서 여기에 두 개의 클래스가 있습니다 RealmModelExample RealmModelExample의 exampleApplication은 데이터베이스 모델을 갖게 될 것입니다

그리고 우리의 응용 프로그램에서 예제 응용 프로그램을 사용하는 것이 좋습니다 우리 영역 트랜잭션을 사용합니다

그래서 여기에 우리는 우리의 영역을 건설하기 위해 계속 될 것입니다 모델 클래스 그래서 우리는 우리의 실제 모델 예제가 미안해 물론 RealmModelExample을 가지고 있고 exampleApplication을 가지고 있습니다 Realm에서 바로 그렇습니다 모델 예제 우리는 간단한 java POJO 클래스를 생성 할 것입니다 POJO 용의 낡은 Java 오브젝트이므로, 이름을 가지는 클래스를 구축하려고합니다

나이와 getter와 setter를 얻고, 설정한다 그래서 여기에 우리는 간다 그리고 이것은 같다 다른 모든 Java 클래스는 이제 우리가해야 할 일을 실제 모델로 만듭니다 RealmObject를 확장하십시오

그래서 당신이 이것을 지켜 보았다면, 반드시 가지고 있어야합니다 Java에 익숙해 져서 키워드를 확장하므로 Realm 객체를 확장하고 내가 지금 할 일은 생성자를 추가하는 것입니다 getter 및 setter를 사용할 필요가 없도록 매번 우리는 생성자를 호출하여 하지만 빨리 그렇게 하죠 그렇게하면 수업 준비가 완료되고 렘 데이터베이스가 준비가됩니다 이것은 다른 자바 단순 자바 클래스와 비슷합니다

Realm 객체를 확장한다는 사실을 제외하고 지금 당장 우리는 넘어갈 것입니다 이전 예제에서와 마찬가지로 예제 애플리케이션으로 안드로이드 응용 프로그램을 사용하려고 계획 중입니다 안드로이드를 모방하고 싶습니다 여기서는 응용 프로그램을 사용하고 AppcompatActivity를 사용하지 말고 응용 프로그램을 확장 할 것입니다 활동은 내 혀를 비틀므로 응용 프로그램을 확장하려고합니다

바로 끝났습니다 만들기 () 여기에서 내가하고있는 일은 나 대신에 전체 활동을 만들고 XML을 디자인합니다 하나는 할 수 있도록이 응용 프로그램 클래스에서 영역을 초기화 할 수도 있습니다 문맥 '이것'은 imediate 문맥을 이야기하므로 이제 우리는 렐름과 다음은 Realm의 인스턴스를 얻는 것입니다 그래서 우리가하는 일은 Realm입니다

getdefaultinstance () 쿼리를 시작하기 전에 그렇게해야하므로 사용할 것입니다 쿼리를 수행하기 전에 또는 현재 데이터베이스를 쿼리하기위한 Realm 변수 트랜잭션 수행하기 렐류 트랜잭션 쓰기 연산 우리가 원하기 때문에 do는 쓰기 연산이고, 이제 우리는 그 연산을 트랜잭션 내부에 트랜잭션이 래핑되므로 realmbegintransaction () realmcommittransaction ()은 이제 무엇이든 할 것입니다 이 둘 사이에 그리고 당신이 결심하고 싶지 않다면 그것을 취소 할 수 있습니다

좋습니다 첫 번째 예제부터 시작하여 먼저 새로운 영역을 만듭니다 Realmcreate () 객체 메소드를 사용하는 객체 그 미안 인스턴스를 생성하고 새 개체를 추가합니다 영역 혀가 거기에서 거의 뒤 틀 렸기 때문에 이제는 인수는 생성 될 객체의 클래스입니다 그게 바로 우리가 설정할 수없는 객체 생성 메소드의 인수입니다 우리의 나이와 이름 그리고 일단 우리가 그 일을 끝내면 커밋 안에 있습니다 거래와 시작 거래는 모두 데이터베이스에 삽입됩니다

내 친구는 새로운 값을 영역 데이터베이스에 삽입하는 간단한 방법입니다 이보다 더 많은 것은 그것의 것입니다 그리고 나는 당신에 대해서 모른다 그러나 나는 정말로 wowed 그리고 처음에 나는 그것을 보았다

그것은 정말로 흥미 있었다 그러나 나는 이것을 예 하나 또는 방법 하나 다른 방법을 즉시 보여 드리겠습니다 영역 데이터베이스에 값을 삽입하는 두 번째 방법은 먼저 객체 인스턴스를 만든 다음 copyToRealm () 메서드를 사용하여 그래서 우리는 생성자를 사용하여 이름과 그 이유는 내가 생성자를 사용해야했던 이유 였고 이후에는 RealmcopyToRealm ()하지만 트랜잭션 내에서 그렇게 할 것입니다 먼저 객체의 인스턴스를 생성 할 수 있습니다

트랜잭션 외부이지만 우리는 사용해야하는 영역 데이터베이스에 복사하려고합니다 realmcopyToRealm () 그래서 realmcopyToRealm ()을 수행하고 내부적으로 인수는 사용자를 넣은 다음 트랜잭션을 커밋합니다 그것에 대해 Realm은 하나의 생성자만큼 많은 생성자를 지원합니다

그들 중 하나는 공개 된 인자없는 생성자이거나 코드 1에서 볼 수있다 그들 중 누구도 어떤 논쟁도해서는 안되기 때문에 당신이 원하는 경우가있을 수 있습니다 한 번에 하나 이상의 개체에 있으므로 권장되는 접근 방식은 다음과 같습니다 인서트를 사용하거나 삽입하거나 업데이트하십시오 나중에 얘기 하겠지만, 지금은 그냥 insert ()를 사용하려고합니다

우리가 할 일은 우리 영역의 두 객체를 생성하는 것입니다 모델 예제 클래스 그래서 첫 번째 객체는 가능한 한 James라는 이름을 갖습니다 22 세가되면 다음 대상은 찰스와 13 세라고 말할 수 있습니다 서로 다른 두 개의 트랜잭션을 생성하는 대신 두 개의 객체가 생성되었습니다 우리는 단지이 목록을 삽입하고 모든 것이 진행되고있는 것입니다

우리 데이터베이스에 삽입 될 것입니다 이전에 삽입 한 내용은 트랜잭션을 삽입하고 그래서 지금 내가 할 일은 우리의 영역을 수행하는 것입니다 begintransaction () 그런 다음 realminsert ()를 호출하고 insert에 사용자 사용자는 가지고있는 다른 어떤 영역 데이터베이스에도 이것을 사용할 수 있습니다 아마도 당신은 이름, 나이, 성별을 가질 수있는 변수가 두 개 더 많을 것입니다

주소, 그리고 이것은 매우 편리한 방법입니다 그래서 저는 Realm에 대한 간단한 소개와 그것이 어떻게 작동하는지 믿습니다 여기에서 우리는해야 할 일 목록을 만들어서 거기에있는 것을 볼 수 있습니다 여기에 두 개의 생성자가 있는데, 여러분이 생성자를 사용하려고한다면 앞서 언급했듯이 인수가없는 사람이라면 오류가 발생하지 않을 것입니다 이 비디오와 다가오는 비디오에서 우리는 할 일 목록을 만들 것입니다 너희들 모두 최선을 기원한다