oracle2014

前日)
23日(火) Takahiro YAMADA WebLogic ServerのExalogic最適化機能を調べてみる

さて、今年は、indexed dbのソースをちゃんと書いてみようとおもう

なぜ、indexed dbが oracleなのかって?

それは、ググればわかる
http://en.wikipedia.org/wiki/Indexed_Database_API
その中で、
WebSimpleDB API". W3.org. Retrieved 2011-02-18.
の記事で

W3C Working Draft 29 September 2009
 nikunj.mehta@oracle.com が書いたから・・・


で、その名前で検索してみると、
http://javascript.g.hatena.ne.jp/edvakf/20091102/1257139731
最初は、 Oracleと、Mozilaと、Microsoftで、なにやら作っていったみたい

で、その
http://rgaidot.soup.io/post/41785358/WebSimpleDB-has-become-IndexedDB-www-w3-org

WebSimpleDB has become IndexedDB
と、途中で名前を変えてきました


さて、今年は、このindexedDBが、いろんなところで見られるようんになるでしょう

では実際に動かしてみましょう

いろんなラッパーがあるのですが、
まずは、ラッパーなしで、生で触ってみましょね

名前の定義

オブジェクトストア
データを格納するための入れ物です。RDBMSのテーブルに相当


キー
オブジェクトストアには、各データを一意に識別するキーが必要です。
キーは、createObjectStore の第2引数で指定

とりあえず、これだけわかってれば、まあ、大丈夫


使えるかどうかのブラウザ判定

if (!window.indexedDB)
が trueなら、そのブラウザは、indexeddbが使えます
つまり, js とかをインクルードする必要がなく、そのまま使えます


試せるファイル

jpoug2014.htm
上記をつかってください

ただし、indexedDBは、ローカルでは動かないのです

どこぞのサーバーにアップして、httpか、httpsで動かしてください

動きだけ確認したい人は、こちらから
http://yoshida.lean-system.co.jp:82/jpoug2014.html

さて、何ができるかとういと、

サーバーにアクセスした後に、ローカルでセッション関係なく、
Cookieよりも多くの情報を保持できる。
しかも、Cookieと違って、
indexedDB内のデータをサーバーにアップロードするかどうかは、
開発者が決定することができる





やってみましょう
タブレットでもできますよー

Database 名を決めて、Table 名を決めましょう
まあ、いつも通り
こんな感じで

で、create/open DBボタンを押します
まあ、なにも表示されませんが、これで
DBとTableが準備できました

ただ、注意すべきは、このindexedDBは、DBとTableは 
一緒につくる必要があるということです

まあ、開発するわけじゃないので、リリース時につくるだけで、
あとから、ユーザーが追加することは、あまり考慮していません
*実際には、追加できるようですが、何度やってもデータが飛びました・・・

つづいては、操作するTableを選んでもらい、データを登録します
今回は、キーは、数字で限定しています。
*通常は、数字じゃなくてもよいです

で、設定ボタンをおします

すると、値だけが消えた状態になります

はい、こんな感じで

で、あと、2名追加してみましょう
200  山田
300  渡辺

追加し終わったら、検索です



はい、こんなの出ました・・・

と、出たわけです

次は、Departmentsにして、データを入力してみましょう

それと、他に3つほど

とで200   大阪
300   名古屋
400   福岡

そして、検索してみましょう


と、出ました

さて、一度、ブラウザを閉じて、もう一度ひらいてみてください

はい、もう一度検索するとちゃんと出ましたね!



さて、このindexedDBファイルは、どこに保存されてるのでしょうか?

それは、ここ!
って、見つからないのです・・・
どこか知ってる人がいたら教えてください

Firefox 34 on windows 8.1(x64)だと、どこにあるのーーーー???


モダンブラウザのストレージ

としては、このように書かれています

WebSQL Database は未だに重宝されています。
FileSystem API は慎重に仕様の議論が進められています。
Application Cacheはいくつかの問題点が指摘された。
そして、
Indexed Database はオブジェクト型ストレージで、次世代ブラウザデータベースの本命として多くのブラウザに実装され、徐々に利用が広がっています。今後最も利用されるデータベースになるでしょう。
参照元) http://www.html5rocks.com/ja/tutorials/offline/quota-research/


んー、やっぱり、indexedDBですね

でも、サファリでは使えない・・と思ったあなたに朗報!

iOS8からは、safariでも使えるそうです!
http://dev.classmethod.jp/references/ios8-safari-available-indexeddb/

時代は、確実に indexedDBですね!

ソースを読んで、質問したいときは、facebookで質問してください
こちらまでー
https://www.facebook.com/lean.system

(^ ^)/

明日は、
25日(木) 新久保 浩二さんです


みなさまに、よき喜びがありますように

メリークリスマス 2014 !


ċ
jpoug2014.html
(16k)
Mototaka Yoshida,
2014/12/24 4:28
Comments