那麼咱們要用的就是資料庫進行快取
那麼就要建立乙個資料庫
public
class
myhelper
extends
sqliteopenhelper
@override
public
void
oncreate(sqlitedatabase sqlitedatabase)
@override
public
void
onupgrade(sqlitedatabase sqlitedatabase, int i, int i1)
}
下面就是要快取了
他需要對資料庫進行操作
public
class
jsondao
/*** 插入資料的操作
*/public
void
insertjson(string json,string url));
//再去新增
contentvalues values = new contentvalues();
values.put("json",json);
values.put("url",url);
database.insert("jsoncache",null,values);
//關閉
database.close();
}/**
* 查詢資料庫的操作....根據傳入url獲取存的json字串
*/public string getjson(string url), "url = ?", new string, null, null, null);
if (cursor.movetonext())
return
null;
}}
剩下的就是在acvitity或者在fragment中寫**了
就是要在載入資料的方法前面進行快取
jsondao jsondao= new jsondao(getcontext());
//1.先讀取資料庫中存的資料....有資料,解析展示....無資料,網路獲取資料
string json = jsondao.getjson(「url」);
if (json != null)else
資料庫快取
用資料庫 將要儲存的nsarray 或 nsdictionary 物件 轉為nsdata型別。再將nsdata存到資料庫的blob中。若將nsarray直接存到資料庫 那麼資料庫中儲存的是 nsstring型別的資料而不是nsarray物件本身,因此要轉為nsdata型別。方法如下 將oc物件轉為n...
快取資料庫
資料庫快取,當沒有網路時,拿取資料庫 內容,當重新整理資料時,清空資料庫內容,從新新增 建立資料庫類方法 package com.example.administrator.xie.dao import android.content.context import android.database....
資料庫快取
資料庫從伺服器上讀取資料時,可以從硬碟的資料檔案中獲取資料,也可以從資料庫快取中讀取資料。現在資料庫管理員需要搞清楚的是,在什麼樣的情況下,系統是從快取中讀取資料,而不是從硬碟的資料檔案中讀取資料?簡單的說,資料快取就是記憶體中的一塊儲存區域,其儲存了使用者的sql文字以及相關的查詢結果。通常情況下...