【HTML5初探之本地儲存】如果沒有資料庫。。。
導航
【初探HTML5之使用新標籤佈局】用html5佈局我的部落格頁!
【HTML5初探之form標籤】解放表單驗證、增加檔案上傳、整合拖放
【HTML5初探之繪製影像(上)】看我canvas元素引領下一代web頁面
【HTML5初探之繪製影像(下)】看我canvas元素引領下一代web頁面
【HTML5初探之多媒體元素】視訊播放HTML5、Flash誰才是王道?
【HTML5初探之本地儲存】如果沒有資料庫。。。
【HTML5初探之離線應用】如何打造零請求、無流量的網站?
【HTML5初探之通訊API】跨域門檻不再高、資料推送不是夢
【HTML5初探之Web Workers】網頁也能多執行緒
【HTML5初探之Geolocation API】讓我們來回去地理資訊
前言
本章主要內容是Web Storage與本地資料庫,其中Web Storage 是對cookie的優化,本地資料庫是HTML5新增的一個功能,使用它可以在客戶端建立一個資料庫
大大減輕伺服器端的負擔,加快訪問資料速度。
學習本章需要掌握Web Storage基本概念,瞭解sessionStorage與localStorage的使用與差別
掌握本地資料庫的使用
什麼是WebStorage?
前面說過,webstorage是對cookie的優化而來,HTML4中使用cookie在客戶端儲存使用者資料,長期使用發現存在以下問題:
大小限制在4kb
cookie每次隨HTTP事務一起傳送,浪費頻寬
正確操作cookie很複雜(這個有待考慮)
由於以上問題,HTML5提出WebStorage作為新的客戶端本地儲存技術。
複製程式碼
Web Storage 技術在web上儲存資料即針對客戶端本地;具體來說分為兩種:
sessionStrage:
session即會話的意思,在這裡的session是指使用者瀏覽某個網站時,從進入網站到關閉網站這個時間段,session物件的有效期就只有這麼長。
localStorage:
將資料儲存在客戶端硬體裝置上,不管它是什麼,意思就是下次開啟計算機時候資料還在。
兩者區別就是一個作為臨時儲存,一個擁有長期儲存。
複製程式碼
使用示例
簡單應用
在chrome瀏覽器下看會有感覺的。
簡單web留言板
簡單留言板
更復雜的運用中,可以將value值用作json字串,以此達到用作資料表的目的;
本地資料庫
在HTML5中內建了一個可通過sql訪問的資料庫(新瀏覽器果真強大啊!),所以在HTML4中資料只能存在伺服器端,HTML5則改變了這一原則。
這種不需要儲存在伺服器的專有名詞為“SQLLite”(我終於知道他是幹什麼的了)
複製程式碼
使用SQLLite資料庫,需要兩個必要步驟:
建立資料庫訪問物件
使用事務處理
建立物件:
openDatabase(dbName, version, dbDesc, size)
實際訪問:
db.transaction(function () {
tx.excuteSql(`create table ……`);
});
資料查詢:
excuteSql(sql, [], dataHandler, errorHandler)//後面兩個為回撥函式;[]估計是做sql注入處理
複製程式碼
光說不練假把式,我們來實際操作一番,使用資料庫實現web通訊錄(左思右想還是用上了jQuery):
做的時候居然發現我的FF不支援本地資料庫!!!以下是用chrome完成的簡單的通訊錄:
通訊錄
結語
對於搞過後端的同學,這章東西其實也是非常簡單的,我再一次湧起了這種想法:
其實HTML5就是HTML4+api介面,目的就是讓我們可以用js做更多事情罷了。
本文轉自葉小釵部落格園部落格,原文連結:http://www.cnblogs.com/yexiaochai/archive/2013/04/19/3031002.html如需轉載請自行聯絡原作者
相關文章
- 資料庫沒有完美的儲存引擎資料庫儲存引擎
- HTML5 之本地儲存HTML
- 如果沒有FIFO儲存器 pthread_rwlock_destroythread
- Flutter持久化儲存之資料庫儲存Flutter持久化資料庫
- flutter本地資料儲存 sqfliteFlutter
- greenDAO資料庫之修改儲存地址資料庫
- 《資料儲存》之《分庫,分表》
- 【VMware vSphere】沒有共享儲存的ESXi主機之間如何共享本地儲存上的ISO檔案。
- 資料庫表設計之儲存引擎資料庫儲存引擎
- SAP MM 特殊庫存之T庫存初探
- MonetDB列存資料庫架構初探資料庫架構
- 儲存資料之SharedPreference
- 【資料庫】資料庫儲存過程(一)資料庫儲存過程
- gitlab資料庫儲存位置Gitlab資料庫
- 資料庫儲存過程資料庫儲存過程
- 分散式系統技術:儲存之資料庫分散式資料庫
- 分散式文件儲存資料庫之MongoDB副本集分散式資料庫MongoDB
- 分散式文件儲存資料庫之MongoDB索引管理分散式資料庫MongoDB索引
- Docker最全教程——資料庫容器化之持久儲存資料(十一)Docker資料庫
- JavaScript本地儲存的方式有哪些JavaScript
- Android中的資料儲存之檔案儲存Android
- k8s之資料儲存-配置儲存K8S
- HTML5本地儲存localStorage與sessionStorage詳解HTMLSession
- 沒有儲存的word文件怎麼找回來 恢復沒有儲存的word文件
- Spring Boot實戰系列(2)資料儲存之NoSQL資料庫MongoDBSpring BootSQL資料庫MongoDB
- 分散式文件儲存資料庫之MongoDB訪問控制分散式資料庫MongoDB
- 分散式文件儲存資料庫之MongoDB分片叢集分散式資料庫MongoDB
- 報表資料分庫儲存
- MySQL資料庫操作、儲存引擎MySql資料庫儲存引擎
- MySql資料庫——儲存過程MySql資料庫儲存過程
- 本地儲存VS雲端儲存:區別不只是資料存放位置
- HTML5有哪些儲存型別?它們之間有什麼區別?HTML型別
- 明解資料庫------資料庫儲存演變史資料庫
- k8s之資料儲存-高階儲存K8S
- MySQL 更改資料庫資料儲存目錄MySql資料庫
- 重新學習Mysql資料庫3:Mysql儲存引擎與資料儲存原理MySql資料庫儲存引擎
- PostgreSQL 資料庫學習 - 1.資料庫體系結構之儲存結構SQL資料庫
- 分散式文件儲存資料庫之MongoDB基礎入門分散式資料庫MongoDB
- Python 黑帽程式設計 4.2 Sniffer 之資料本地儲存和載入Python程式設計