現場でrealmを使う機会があり、sqliteのように煩わしい処理を書かなくてよくて
便利なので、自分のアプリに取り入れたので、メモ。
gradleに追加する必要があります
1 2 3 |
dependencies { compile 'io.realm:realm-android:0.82.1' } |
次は、DBのカラム用のfileを作成します
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
import io.realm.RealmObject; import io.realm.annotations.PrimaryKey; public class UserObject extends RealmObject { @PrimaryKey private long id; private String name; public void setName(String name) { this.name = name; } public void setId(long id) { this.id = id; } } |
アノテーションを使って、primary keyの宣言をすることができます。
・次はDBに挿入している場面です
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_signup); // context Realm realm = Realm.getInstance(this); realm.beginTransaction(); // set UserObject obj = realm.createObject(UserObject.class); // Set its fields // idは1から順にセットされるはず obj.setId(realm.where(UserObject.class).maximumInt("id") + 1); obj.setName("hoge"); realm.commitTransaction(); } |
idには、1から入っていくはずです。
code
more code
~~~~