LitePal

關(guān)于LitePal(github地址)

三步曲:
1. 添加依賴:api 'org.litepal.android:java:3.0.0'
2. 在assets中生成litepal.xml文件曼验;具體內(nèi)容查看litepal.xml
3. application繼承LitePalApplication  或者添加:LitePal.initialize(this);
<?xml version="1.0" encoding="utf-8"?>
<litepal>
    <!--設(shè)定數(shù)據(jù)庫的名字-->
    <dbname value="curry"></dbname>

    <!--設(shè)定數(shù)據(jù)庫的版本號[需要純數(shù)字]-->
    <version value="2"></version>

    <!--用于設(shè)定所有的映射模型-->
    <list>
        <mapping class="com.curry.basic.test.TestBean"></mapping>
        <mapping class="com.curry.basic.test.AllBean"></mapping>
        <mapping class="com.curry.basic.test.ChildBean"></mapping>
        <mapping class="com.curry.basic.test.OnlyBean"></mapping>
    </list>
</litepal>
  • 數(shù)據(jù)庫相關(guān)(表關(guān)聯(lián)):
    • 一對一:數(shù)據(jù)表根據(jù)外鍵進行關(guān)聯(lián)(哪個表添加外鍵都可以)倔喂;兩個實體類相互持有對方的引用;
    • 多對一:數(shù)據(jù)表根據(jù)外鍵進行關(guān)聯(lián)(多方添加外鍵);通過集合類;
    • 多對多:添加中間表存放兩表的id;通過集合的多持有;
  • 對象關(guān)系映射的數(shù)據(jù)類型: int鹏漆、short、long创泄、float艺玲、double、boolean鞠抑、String和Date
  • 建表:
    • 新建實體類饭聚,即數(shù)據(jù)庫表;
    • 根據(jù)對象關(guān)系映射搁拙,以上的數(shù)據(jù)類型都會映射到數(shù)據(jù)庫表中;
    • 然后在litepal.xml中配置模型類的類名
    • 執(zhí)行SQLiteDatabase db = Connector.getDatabase();操作數(shù)據(jù)后秒梳,即可生成;
  • 升級表: 僅需要添加需要新增的模型類箕速,然后在xml中配置即可【版本號要加1】
  • 增酪碘、刪、改弧满、差: 都可以通過LitePal進行操作婆跑;或者對實體類進行操作,注意刪除功能要對已經(jīng)持久化過的實體類進行刪除才起作用庭呜;可以通過isSaved判斷實體類是否持久化滑进。
  • 聚合函數(shù):
    • litepal.count(testbean.class);//統(tǒng)計行數(shù)
    • litepal.sum(testbean.class, "test", int.class);//求和
    • litepal.average(testbean.class, "test");//求平均值
    • litepal.max(testbean.class, "test", int.class);//求最大
    • litepal.min(testbean.class, "test", int.class);//求最小

其他:

SQLite不支持刪除列的命令嗎?那LitePal又是怎樣做到的呢募谎?
其實LitePal并沒有刪除任何一列扶关,它只是先將comment表重命名成一個臨時表,
然后根據(jù)最新的Comment類的結(jié)構(gòu)生成一個新的comment表数冬,
再把臨時表中除了publishdate之外的數(shù)據(jù)復(fù)制到新的表中节槐,最后把臨時表刪掉。
因此拐纱,看上去的效果好像是做到了刪除列的功能铜异。

PS:

在module中也可正常使用,xml放在module中的assets文件中秸架,主工程是可以正常調(diào)用的揍庄。(親試有效哦)

參考/感謝:郭霖Android數(shù)據(jù)庫高手秘籍

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市东抹,隨后出現(xiàn)的幾起案子蚂子,更是在濱河造成了極大的恐慌沃测,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,826評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件食茎,死亡現(xiàn)場離奇詭異蒂破,居然都是意外死亡,警方通過查閱死者的電腦和手機别渔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評論 3 395
  • 文/潘曉璐 我一進店門附迷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人钠糊,你說我怎么就攤上這事挟秤。” “怎么了抄伍?”我有些...
    開封第一講書人閱讀 164,234評論 0 354
  • 文/不壞的土叔 我叫張陵艘刚,是天一觀的道長。 經(jīng)常有香客問我截珍,道長攀甚,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,562評論 1 293
  • 正文 為了忘掉前任岗喉,我火速辦了婚禮秋度,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘钱床。我一直安慰自己荚斯,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,611評論 6 392
  • 文/花漫 我一把揭開白布查牌。 她就那樣靜靜地躺著事期,像睡著了一般。 火紅的嫁衣襯著肌膚如雪纸颜。 梳的紋絲不亂的頭發(fā)上兽泣,一...
    開封第一講書人閱讀 51,482評論 1 302
  • 那天,我揣著相機與錄音胁孙,去河邊找鬼唠倦。 笑死,一個胖子當(dāng)著我的面吹牛涮较,可吹牛的內(nèi)容都是我干的稠鼻。 我是一名探鬼主播,決...
    沈念sama閱讀 40,271評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼狂票,長吁一口氣:“原來是場噩夢啊……” “哼枷餐!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,166評論 0 276
  • 序言:老撾萬榮一對情侶失蹤毛肋,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后屋剑,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體润匙,經(jīng)...
    沈念sama閱讀 45,608評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,814評論 3 336
  • 正文 我和宋清朗相戀三年唉匾,在試婚紗的時候發(fā)現(xiàn)自己被綠了孕讳。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,926評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡巍膘,死狀恐怖厂财,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情峡懈,我是刑警寧澤璃饱,帶...
    沈念sama閱讀 35,644評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站肪康,受9級特大地震影響荚恶,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜磷支,卻給世界環(huán)境...
    茶點故事閱讀 41,249評論 3 329
  • 文/蒙蒙 一谒撼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧雾狈,春花似錦廓潜、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至锭弊,卻和暖如春堪澎,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背味滞。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評論 1 269
  • 我被黑心中介騙來泰國打工樱蛤, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人剑鞍。 一個月前我還...
    沈念sama閱讀 48,063評論 3 370
  • 正文 我出身青樓昨凡,卻偏偏與公主長得像,于是被迫代替她去往敵國和親蚁署。 傳聞我的和親對象是個殘疾皇子便脊,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,871評論 2 354

推薦閱讀更多精彩內(nèi)容