开源的Android开发框架-------PowerFramework使用心得(四)数据库管理DBFarmer
DBFarmer是PowerFramework数据库管理工具的集合。
可以进行对象的存储,添加了setter和getter的参数会被收录到数据库中,每个参数作为一个项,int类型的id或_id会被作为primary key。
数据库名为DBFarmer.db,在项目目录下。每个对象的表名为类的全名替换"."为"_",如com.source.beans.Person的表名为com_source_beans_Person。
private int id = 0; private int num1 = 0; private double num2 = 1.0; private String str = "hello"; private boolean isEnable = true; public int getNum1() { return num1; } public void setNum1(int num1) { this.num1 = num1; } public double getNum2() { return num2; } public void setNum2(double num2) { this.num2 = num2; } public String getStr() { return str; } public void setStr(String str) { this.str = str; } public boolean isEnable() { return isEnable; } public void setEnable(boolean isEnable) { this.isEnable = isEnable; } public int getId() { return id; } public void setId(int id) { this.id = id; }
1、插入,调用save方法
TestBeanNoID bean = new TestBeanNoID(); DBFarmer.save(this,bean);
2、删除指定id记录,deleteById方法
DBFarmer.deleteById(this, TestBean.class, 0);
3、删除全部,deleteAll方法
DBFarmer.deleteAll(this, TestBean.class, 0);
4、单个条件删除,deleteByItem方法
//删除其中itemName=itemValue的全部内容 DBFarmer.deleteByItem(this, TestBean.class,"itemName","itemValue");
5、单个条件更新,updateByItem方法
和删除一样,当前还没有支持多个条件和like等形式,在不久的未来会开发出来
//更新其中itemName=itemValue的全部内容 TestBeanNoID bean = new TestBeanNoID(); DBFarmer.deleteByItem(this,"itemName","itemValue", bean);
6、查询,全部,findAll
List<TestBeanNoID> list = DBFarmer.findAll(this, TestBeanNoID.class); for(TestBeanNoID b2 : list){ Log.i(TAG, b2.getAccount() + "," +b2.getPassword()); }
7、根据ID查询,find
根据ID查找一个,当该JavaBean没有id 或者 _id的时候不能查询,返回null
TestBeanNoID b = DBFarmer.find(this, 0, TestBeanNoID.class); if(b == null){ Log.i(TAG, "TestBeanNoID is null"); }else{ Log.i(TAG, "TestBeanNoID id:" + b.getAccount()); }
8、清空数据库,clearAll
DBFarmer.clearAll(this);
框架和DEMO文件下载地址 http://www.ideayapai.com/Application/Home/View/default/PowerFamily/index-2.htm
欢迎各位大牛、大神莅临QQ群进行交流:575026537