org.xutils.config.DbConfigs

package org.xutils.config;



import org.xutils.DbManager;

import org.xutils.common.util.LogUtil;

import org.xutils.ex.DbException;



/**

* @author 注释者:王教成

* @version 注释版:1.0.0

* 全局数据库配置枚举类

*/

public enum DbConfigs {

HTTP(new DbManager.DaoConfig()

.setDbName("xUtils_http_cache.db")//设置数据库名称

           .setDbVersion(1)//设置数据库版本1

           .setDbOpenListener(new DbManager.DbOpenListener() {

@Override

               public void onDbOpened(DbManager db) {

db.getDatabase().enableWriteAheadLogging();//重写数据库已打开回调方法,启用写前日志

               }

})//设置数据库打开监听器

           .setDbUpgradeListener(new DbManager.DbUpgradeListener() {

@Override

               public void onUpgrade(DbManager db, int oldVersion, int newVersion) {

try {

db.dropDb();//默认删除所有表

                   } catch (DbException ex) {

LogUtil.e(ex.getMessage(), ex);//重写更新回调方法,捕获数据库异常,记录日志

                   }

}

})),//设置数据库更新监听器

   COOKIE(new DbManager.DaoConfig()

.setDbName("xUtils_http_cookie.db")//设置数据库名称

           .setDbVersion(1)//设置数据库版本1

           .setDbOpenListener(new DbManager.DbOpenListener() {

@Override

               public void onDbOpened(DbManager db) {

db.getDatabase().enableWriteAheadLogging();//重写数据库已打开回调方法,启用写前日志

               }

})//设置数据库打开监听器

           .setDbUpgradeListener(new DbManager.DbUpgradeListener() {

@Override

               public void onUpgrade(DbManager db, int oldVersion, int newVersion) {

try {

db.dropDb();//默认删除所有表

                   } catch (DbException ex) {

LogUtil.e(ex.getMessage(), ex);//重写更新回调方法,捕获数据库异常,记录日志

                   }

}

}));//设置数据库更新监听器



   private DbManager.DaoConfig config;//声明数据访问对象配置

   DbConfigs(DbManager.DaoConfig config) {

this.config = config;

   }//构造器



   /**

    * 获取数据访问对象配置

    * @return 返回数据访问对象配置

    */

   public DbManager.DaoConfig getConfig() {

return config;

   }

}

org.xutils.config.DbConfigs