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

开源的Android开发框架-------PowerFramework使用心得(四)数据库管理DBFarmer的更多相关文章

  1. 开源的Android开发框架-------PowerFramework使用心得(一)总体介绍

    PowerFramework是一款几乎囊括了所有Android基础功能的框架应用,这个框架目前是开源的,开发者可以在这个框架的基础上进行二次开发.结合开发者自己的UI设计,可以很快就能开发出具备基础应 ...

  2. 开源的Android开发框架-------PowerFramework使用心得(五)网络请求HTTPRequest

    GET请求示例 //所有参数都使用Bundle,用putString Bundle bundle = new Bundle(); bundle.putString("username&quo ...

  3. 开源的Android开发框架-------PowerFramework使用心得(二)图片异步加载ImageTask

    图片异步加载.可以备注图片是否缓存.缓存状态. 1.缓存-SD卡,路径可设置 2.图片压缩 3.可加载本地和网络图片 4.url为本地视频文件可以显示缩略图 5.中文url图片地址FileNotFou ...

  4. 开源的Android开发框架-------PowerFramework使用心得(三)内置浏览器BrowserActivity

    使用内置浏览器必须是引用源码的方式(因为jar中不能打包布局文件等资源).内置浏览器是一个继承自BaseActivity的普通Activity,使用WebView实现. 1.简单的打开内置浏览器 In ...

  5. Android adb shell学习心得(四)

    1.awk中的sub sub为替换函数.形式如 sub(/1/,"",$2) 将第二个变量的第一个1替换为空,若将sub替换为gsub.则替换全部的1. 2.awk中的-F 分隔符 ...

  6. Android studio 使用心得(四)—android studio 多渠道打包(二)

    Android studio 使用心得(四)—android studio 多渠道打包 这篇文章讲了一种打包方式.是直接在android studio 里面可视化操作,结合配置文件.我个人觉得严格上来 ...

  7. Android 开发框架汇总

    Android 开发框架汇总 时间过的真快,转眼间就要进入到16年的8月了,现在应该是三伏期间,一个字“热”.前端时间整理了一篇“JS前端框架汇总”,然后紧接着又抽时间学习了一下Android开发,在 ...

  8. Android 开发框架介绍

    一.概述 现android开发有很多开发框架使用,做App不一定用到框架,但好框架的思想也是值得学习.选择合适的开发框架可提供实用功能,简化项目开发提升效率. 二.Afinal框架 简介 Afinal ...

  9. Android 开源组件 ----- Android LoopView无限自动轮转控件

    Android 开源组件 ----- Android LoopView无限自动轮转控件 2015-12-28 15:26 by 杰瑞教育, 32 阅读, 0 评论, 收藏, 编辑 一.组件介绍 App ...

随机推荐

  1. c++和java(c#)之间的pk

    个人认为本文较偏激,且年代较久远,但可以一看. 转自c++和java(c#)之间的pk 1.谁好谁坏? 如同当初我没有想到会进入java阵营一样,这次闯入c++阵营也是意料之外的.多年前,受到微软的影 ...

  2. java webservice服务器端获取request对象的三种方式

    有的时候在webservice里我们需要获取request对象和response对象,比如想要获得客户端的访问ip的时候就需要这么做,下面说三种方式,当然三种方式可能是针对不同方式部署webservi ...

  3. 【HDOJ】4109 Instrction Arrangement

    差分约束. /* 4109 */ #include <iostream> #include <queue> #include <vector> #include & ...

  4. 纯css切换左侧菜单

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  5. 【转】android 完全退出应用程序

    原文网址:http://www.yoyong.com/archives/199 android退出应用程序会调用android.os.Process.killProcess(android.os.Pr ...

  6. 最大流算法---Edmond-Karp

    这个算法是基于FF方法,就是通过不断求残余网络的增广路来增广流量,直到找不到增广路为止.注意:每次找到增广路以后都要更新原网络.EK算法通过BFS寻找源S到汇T的一条最短路径,因此时间复杂度是O(VE ...

  7. HDOJ 2010 水仙花数

    Problem Description 春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的: "水仙花数"是指一个三位数,它的各位数字的立方和等于其本 ...

  8. UVa11090 Going in Cycle!!

    UVa11090 Going in Cycle!! 链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=34650 [思路] ...

  9. ACM2054_A=B

    /* 问题说明 给你两个号码A和B,如果A等于B,您应打印“YES”,或打印“NO”. 输入 每个测试案例包含A和B两个数字 产量 每一种情况下,如果A等于B,您应打印“YES”,或打印“NO”. 采 ...

  10. php将SQL查询结果赋值给变量

    2012-03-25 12:12 a786013819 | 分类:数据库DB | 浏览1393次 $sql = "select field1 from pre_common_member_p ...