fbpx
  1. HOME
  2. ブログ
  3. IT技術
  4. 【第9回】Go言語(Golang)入門~ObjectBox導入編~

【第9回】Go言語(Golang)入門~ObjectBox導入編~

Go言語(Golang)入門~第9回目~

秋山笹川先生

(株)ライトコードの笹川(ささがわ)です!

前回は、Goの環境やパッケージ管理を見直していきました。

今回は、GreenRobot ObjectBoxというデータベースを導入してみます!

それでは、いってみましょう!

前回の記事はこちら

ObjectBoxとは

ObjectBox とは、GreenRobot のデータベースになります。

GreenRobot は、ネイティブモバイルアプリケーションのライブラリで、馴染みがある人も多いのではないでしょうか?

ObjextBox 自体は、笹川の個人開発アプリでも利用経験があり、他のメジャーな DB と比較しても扱いやすい印象を受けたので愛用しています。

前回導入した、Firestore と同様で、NoSQL のデータベースとなります。

Firestore では、Firebaseへの認証が必要でした。

しかし、ObjectBox はローカルに置かれるデータベースになりますので、認証の手間が減るのは嬉しいですね。

ObjectBoxを導入してみよう!

それでは、以下のドキュメントを参考に進めていきましょう!

【ドキュメント】
https://golang.objectbox.io/

ObjectBoxのimportを追加

ドキュメント通りに ObjectBox の import  を追加します。

Go Modules が入っていれば、そのまま main.go を実行することでライブラリを導入されます。

導入した ObjectBox のバージョンが無事に出力されました!

データを追加してみよう!

まずは、データを追加するためのテーブルを定義します。

modelディレクトリを作成し、その中に task.go を作成します。

3行目の gogen  の設定を入れておかないと、この先詰まりますので必ず入れてください。

go generateコマンドを実行

go generate  コマンドを実行します。

これで、Taskテーブルの設定は完了しました。

データベースの接続からデータの追加までの記述

次に、データベースの接続からデータの追加までを main.go へ記述します。

これで実行し、エラーが出なければ、データ追加は成功です。

デバッグログ

デバッグログは出ましたが、エラーログは出なかったようです。

データの読み取り

データを読み取ってみましょう。

デバッグログをgrepで除外

デバッグログがあると結果が見えづらいので、 grep  で除外して実行します。

最初に追加した1件のみ、あることを確認できました!

データを更新してみよう!

追加したデータの Text の内容を更新します。

実行

それでは、実行してみましょう。

データの更新に成功しました!

データを削除してみよう!

今回は、IDを指定し、削除してみようと思います。

現在、保存されているデータのIDは「1」なので、「1」を指定します。

ログ出力

ログで確認するために、レコードの数をログ出力させます。

問題なく削除できたようです!

データを検索してみよう!

データを複数個追加し、データを1個だけ抽出するようにしてみます。

ログ出力

これで実行すると、タスクが10個追加され、Text がタスク5のものだけ、IDなどをログ出力します。

検索も簡単にできました!

おわりに

今回は、ObjectBoxの導入と、データの操作についてやってみました。

軽量高速のObjectBoxは、モバイル向けとして開発されましたが、今では様々な言語でも利用できるようになってきています。

この機会に皆様も触ってみてはいかがでしょうか!

なお、今回作成したgoファイルは、こちらのリポジトリにて管理しています。

関連記事

ライトコードよりお知らせ

にゃんこ師匠にゃんこ師匠
システム開発のご相談やご依頼はこちら
ミツオカミツオカ
ライトコードの採用募集はこちら
にゃんこ師匠にゃんこ師匠
社長と一杯飲みながらお話してみたい方はこちら
ミツオカミツオカ
フリーランスエンジニア様の募集はこちら
にゃんこ師匠にゃんこ師匠
その他、お問い合わせはこちら
ミツオカミツオカ
   
お気軽にお問い合わせください!せっかくなので、別の記事もぜひ読んでいって下さいね!

一緒に働いてくれる仲間を募集しております!

ライトコードでは、仲間を募集しております!

当社のモットーは「好きなことを仕事にするエンジニア集団」「エンジニアによるエンジニアのための会社」。エンジニアであるあなたの「やってみたいこと」を全力で応援する会社です。

また、ライトコードは現在、急成長中!だからこそ、あなたにお任せしたいやりがいのあるお仕事は沢山あります。「コアメンバー」として活躍してくれる、あなたからのご応募をお待ちしております!

なお、ご応募の前に、「話しだけ聞いてみたい」「社内の雰囲気を知りたい」という方はこちらをご覧ください。

ライトコードでは一緒に働いていただける方を募集しております!

採用情報はこちら

書いた人はこんな人

笹川 (社員)
笹川 (社員)
新潟生まれ新潟育ち本業はモバイルアプリエンジニア。
日々、猫(犬)エンジニアとして活躍中!

関連記事