xutils3數(shù)據(jù)庫升級(markdown版)

前言:xutils真是一款不錯的android開發(fā)框架,在使用過程中減少了程序員很多的代碼量。不過其中也有一小部分需要注意的地方。其它使用請看xutils3詳細用法

1.注解注意事項

不像黃牛刀的注解,xutils的注解是在運行時(ps:我也不懂),用xutils注解點擊事件發(fā)現(xiàn),在頻繁的切換點擊兩個button的時候,只會響應(yīng)一個button的點擊,用findviewbyid的方式設(shè)置onclicklitsener,就不會有這個bug。

所以我們在用到點擊功能的時候,恰當?shù)挠靡幌伦⒔?,目前只發(fā)現(xiàn)頻繁點擊會出現(xiàn)問題,不一定其它地方埋著什么。

2.數(shù)據(jù)庫升級

當我們的業(yè)務(wù)在一天天完善的時候,之前建立的數(shù)據(jù)庫字段可能需要做修改。我們?nèi)缦屡渲脭?shù)據(jù)庫的代碼

    DbManager.DaoConfig daoConfig =newDbManager.DaoConfig()

    .setDbName("myapp.db")//設(shè)置數(shù)據(jù)庫名

    xutils.db.setDbDir(newFile("/mnt/sdcard/"))//設(shè)置數(shù)據(jù)庫路徑,默認存儲在app的私有目錄

    .setDbVersion(2)//設(shè)置數(shù)據(jù)庫的版本號

    .setDbOpenListener(newDbManager.DbOpenListener() {//設(shè)置數(shù)據(jù)庫打開的監(jiān)聽

        @Override
        public void onDbOpened(DbManager db) {//開啟數(shù)據(jù)庫支持多線程操作,提升性能,對寫入加速提升巨大
        db.getDatabase().enableWriteAheadLogging();
}
})
    .setDbUpgradeListener(newDbManager.DbUpgradeListener() {//設(shè)置數(shù)據(jù)庫更新的監(jiān)聽

        @Override
        public void onUpgrade(DbManager db,intoldVersion,intnewVersion) {

}

})  .setTableCreateListener(newDbManager.TableCreateListener() {//設(shè)置表創(chuàng)建的監(jiān)聽
        @Override
        public void onTableCreated(DbManager db, TableEntity table){
        Log.i("JAVA","onTableCreated:"+ table.getName());
}
});

我們可以在setDbVersion(x)填上任意數(shù)字,當然根據(jù)我們自己的實際情況

在需要改字段的時候,我們可以填x+n的數(shù)字,然后在

.setDbUpgradeListener(newDbManager.DbUpgradeListener() {//設(shè)置數(shù)據(jù)庫更新的監(jiān)聽

@Override 
public void onUpgrade(DbManager db,intoldVersion,intnewVersion) {

  //不需要之前的數(shù)據(jù)

  db.delete(x.class);

  //需要之前的數(shù)據(jù)

  db.addColumn(x.class,"test");//新增的字段

  db.saveOrUpdate(db.findall());//當前表中有這條isId則更新數(shù)據(jù),沒有則添加

}

})

感謝android,感謝開源

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容