今回はAndroidアプリでReamlを利用してデータの管理をしてみようと思います。 実装したい機能は「お気に入り機能」 SQLiteは触ったことあったけど、 NoSQLであるReamlを使うのには勉強時間がかかるのではないかと心配・・・ しかし、日本語のドキュメントがありとても親切↓ https://realm.io/jp/docs/java/latest/ 更に、GitHubで「Android Realm」と検索すれば結構簡単なコードがでてくるのでこれらを拝見しながら いざ、実装!! RealmはNoSQLなのでキーと値のペアでデータを格納していきます。 最初にキーとなるModelなるクラスを作ります。
public class FavoriteModel extends RealmObject{ private int id; public int getId() { return id; } public void setId(int id) { this.id = id; } }
こんな感じで作成します。 重要なのが
extends RealmObject
です。 RealmのModelとして宣言して、あとはカプセル化してゲッター・セッターを書くだけ!! 続いては、データをRealmに格納する処理を書いていきましょう!!
RealmConfiguration config = new RealmConfiguration.Builder(detailActivity) .name(FavoriteDataFile) //データを格納するファイル名を指定 .build(); Realm realm = Realm.getInstance(config); //Realmを使う宣言 final List<FavoriteModel> favoriteList = new ArrayList<>(); FavoriteModel favoriteModel = new FavoriteModel(); favoriteModel.setId(id); favoriteList.add(favoriteModel); //先ほどのModelに格納していく //Modelに格納したデータをRealmに格納し直す realm.executeTransaction(new Realm.Transaction() { @Override public void execute(Realm realm) { realm.copyToRealm(favoriteList); } }); //Realmを終了することを忘れない realm.close();
格納はとても簡単にできました!! 次は格納したデータを取得して表示してみたいと思います!!
テクフリでフリーランス案件を探してみる