android litepal可以指定存储目录吗,Android数据库LitePal的基本用法详解
前言
正好項目用了這種數據存儲方式,特地寫一篇加深印象,在我看來,LitePal是使用最簡單,集成最方便的數據庫,沒有之一。
LitePal 簡介
LitePal 是一款開源的 Android 數據庫框架,它采用了對象關系映射(ORM)的模式,將我們平時使用的一些數據庫(比如 Sqlite)功能進行了封裝。
配置
第一步
gradle注入:
compile 'org.litepal.android:core:1.6.1'
第二步
接著需要配置 litepal.xml 文件,在 app/src/main 目錄右鍵 -> New -> Directory , 創建一個 assets 目錄,在該目錄下新建一個 litepal.xml 文件,編輯內容如下:
說明: 用于設定數據庫的名字,可以隨便起名,我這里是hskj_user,用于設定數據庫的版本號,用于設定所有的映射模型,我們稍后就會用到。
第三步
配置 LitePalApplication,這里有2種方法:
①如果項目的Application沒有繼承其他的Application,可以按照下面方式寫:
public class MyApplication extends LitePalApplication {
...
}
②由于我的項目集成了MultiDexApplication,如下:
所以我選擇了第二種方式配置,在application中的onCreate()配置
@Override
public void onCreate() {
super.onCreate();
LitePal.initialize(this);
}
經過上面的步驟已經將 LitePal 配置完成,接下里開始建表:
import org.litepal.crud.DataSupport;
/**
* Created by zjp on 2018/1/16 16:22.
*/
public class TestEntity extends DataSupport {
private int id;
private int age;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
其實這就是一個 JavaBean ,定義了兩個簡單的屬性,其中id這個字段可寫可不寫,因為即使不寫這個字段,LitePal也會在表中自動生成一個id列,畢竟每張表都一定要有主鍵的。
建好了表之后,接下來還需要將它添加到我們的模型列表中:
現在我們就可以測試了,啟動一個 Activity ,我這里只添加了一個按鈕,在其點擊事件下寫下面一句代碼:
LitePal.getDatabase();
等運行成功之后,可以打開Android Device Monitor查看是否創建成功了。如圖:
可以看到剛剛成功創建的hskj_user數據庫了。
這里我暫時只演示下數據存儲和刪除吧,可以在自己工程中新建一個類,來對LitePal數據庫操作,我是這樣寫的:
/**
* Created by zjp on 2018/1/12 10:01.
*/
public class SearchHistroyDao {
/**
* 獲取所有頻道
*
* @return
*/
public static List getChannels() {
return DataSupport.findAll(TestEntity.class);
}
/**
* 保存年齡關鍵字
*/
public static void saveHistoryKeyword(int ageVal) {
if (ageVal == 0) return;
TestEntity testEntity = new TestEntity();
testEntity.age = ageVal;
testEntity.save();
}
/**
* 清空所有頻道
*/
public static void cleanChanels() {
DataSupport.deleteAll(TestEntity.class);
}
}
然后在你要保存數據的時候,調用SearchHistroyDao.saveHistoryKeyword(*),就能成功保存數據庫,
刪除所有數據時候調用:SearchHistroyDao.cleanChanels()即可。好了,LitePal數據講解完成。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持我們。
您可能感興趣的文章:
Android利用LitePal操作數據庫存取圖片
時間: 2018-01-14
總結
以上是生活随笔為你收集整理的android litepal可以指定存储目录吗,Android数据库LitePal的基本用法详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 899元起!iQOO Z7i配置价格曝光
- 下一篇: ubuntu+touch+android