From: Marvin Killing Date: Sat, 13 Jul 2013 13:16:20 +0000 (+0200) Subject: add golang one snippet intro to root README X-Git-Tag: v1.2.12~276^2~4^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=57acf13beb0d6cf9f7ff4e2d238bdd20d40bdd8c;p=platform%2Fupstream%2Fejdb.git add golang one snippet intro to root README --- diff --git a/README.md b/README.md index 3aa0be0..5b68f3f 100644 --- a/README.md +++ b/README.md @@ -715,6 +715,63 @@ db:close() * **[Lua binding](https://github.com/Softmotions/ejdb/blob/master/luaejdb/README.md)** +EJDB Go binding +================================== + +One snippet intro +----------------------------------- + +~~~~~~ +package ejdbtutorial + +import ( + "fmt" + "github.com/mkilling/ejdb/goejdb" + "labix.org/v2/mgo/bson" + "os" +) + +func main() { + // Create a new database file and open it + jb, err := goejdb.Open("addressbook", JBOWRITER | JBOCREAT | JBOTRUNC) + if err != nil { + os.Exit(1) + } + // Get or create collection 'contacts' + coll, _ := jb.CreateColl("contacts", nil) + + // Insert one record: + // JSON: {'name' : 'Bruce', 'phone' : '333-222-333', 'age' : 58} + rec := map[string]interface{} {"name" : "Bruce", "phone" : "333-222-333", "age" : 58} + bsrec, _ := bson.Marshal(rec) + coll.SaveBson(bsrec) + fmt.Printf("\nSaved Bruce") + + // Now execute query + res, _ := coll.Find(`{"name" : {"$begin" : "Bru"}}`) // Name starts with 'Bru' string + fmt.Printf("\n\nRecords found: %d\n", len(res)) + + // Now print the result set records + for _, bs := range res { + var m map[string]interface{} + bson.Unmarshal(bs, &m) + fmt.Println(m) + } + + // Close database + jb.Close() +} +~~~~~~ + +You can save this code in `ejdbtutorial.go` And build: + + +```sh +go build ejdbtutorial.go +./ejdbtutorial +``` + + EJDB C Library ================================== diff --git a/goejdb/README b/goejdb/README index 6c37f76..bf0cb26 100644 --- a/goejdb/README +++ b/goejdb/README @@ -1,4 +1,4 @@ -EJDB Go Library +EJDB Go binding ================================== One snippet intro