xUtils-DbUitls的使用

  1 public class MainActivity extends Activity {
  2
  3     private DbUtils mDbUtils;
  4
  5     private TextView mTv;
  6
  7     @Override
  8     protected void onCreate(Bundle savedInstanceState) {
  9         super.onCreate(savedInstanceState);
 10         setContentView(R.layout.activity_main);
 11
 12         mTv = (TextView) findViewById(R.id.tv);
 13
 14         mDbUtils = mDbUtils.create(this);
 15         // mDbUtils = mDbUtils.create(this, "dbName.db");
 16         // 第二个参数指定数据库存放的位置
 17         // mDbUtils = mDbUtils.create(context, dbDir, dbName)
 18         // mDbUtils = mDbUtils.create(this, "dbName.db", 2, new
 19         // DbUpgradeListener() {
 20         //
 21         // @Override
 22         // public void onUpgrade(DbUtils arg0, int arg1, int arg2) {
 23         //
 24         // }
 25         // });
 26     }
 27
 28     public void update(View view) {
 29         Person p = new Person("小红1", 11, "nv");
 30         try {
 31             // 更新和所给对象主键相同的数据,具体要更新哪咧的数据,由第二个可变长度数组指定,传null则所有列都更新
 32             // mDbUtils.update(p, null);
 33
 34             // 将符合where条件的行,改为所给的Person的值
 35             mDbUtils.update(p, WhereBuilder.b("name", "=", "小李"), "sex", "age", "name");
 36
 37         } catch (DbException e) {
 38             e.printStackTrace();
 39         }
 40     }
 41
 42     /**
 43      * 数据查询
 44      */
 45     public void find(View view) {
 46         try {
 47             // 查找表中的所有数据
 48             List<Person> list = mDbUtils.findAll(Person.class);
 49
 50             // 自定义条件 查找
 51             // List<Person> list =
 52             // mDbUtils.findAll(Selector.from(Person.class).where("sex", "=",
 53             // "女")
 54             // .and("age", "=", 15));
 55
 56             // 数据查找排序
 57             // List<Person> list =
 58             // mDbUtils.findAll(Selector.from(Person.class).orderBy("age",
 59             // false));
 60
 61             // Person p =
 62             // mDbUtils.findFirst(Selector.from(Person.class).where("sex", "=",
 63             // "男"));
 64
 65             mTv.setText(list.toString());
 66         } catch (DbException e) {
 67             e.printStackTrace();
 68         }
 69     }
 70
 71     /**
 72      * 删除
 73      */
 74     public void delete(View view) {
 75         // Person p = new Person("张三", 15, "斯蒂芬");
 76         try {
 77             // 删除所给的数据对应的表中,主键相同的数据(删除是不管除了主键外的其他数据是否相同)
 78             // mDbUtils.delete(p);
 79
 80             mDbUtils.delete(Person.class,
 81                     WhereBuilder.b("sex", "=", "男").and("age", "=", 18).or("age", "=", 32));
 82
 83             // 删除所给的类的表中的所有数据
 84             // mDbUtils.deleteAll(Person.class);
 85
 86             // 删除跟所给的list的类主键的值相同的数据
 87             // Person p1 = new Person("小明", 18, "男");
 88             // Person p2 = new Person("小红", 15, "女");
 89             // List<Person> list = new ArrayList<Person>();
 90             // list.add(p1);
 91             // list.add(p2);
 92             // mDbUtils.deleteAll(list);
 93
 94         } catch (DbException e) {
 95             e.printStackTrace();
 96         }
 97     }
 98
 99     /**
100      * 数据的插入
101      */
102     public void insert(View view) {
103         Person p1 = new Person("小明", 18, "男");
104          Child c = new Child("小强", "男", 10);
105         // p1.mChild = c;
106
107         // Person p2 = new Person("小红", 15, "女");
108         // Person p3 = new Person("小丽", 21, "女");
109         // Person p4 = new Person("小李", 32, "男");
110         //
111         // List<Person> list = new ArrayList<Person>();
112         // list.add(p1);
113         // list.add(p2);
114         // list.add(p3);
115         // list.add(p4);
116
117         try {
118             // 将数据保存到数据库
119 //            mDbUtils.save(p1);
120             // 保存一个列表,将列表的每一个item作为数据库中的一行
121             // mDbUtils.saveAll(list);
122
123             // 若数据库中没有存在 对应主键的数据,则保存数据
124             // 若已经存在对应主键的数据,则更新该主键对应的数据
125              mDbUtils.saveOrUpdate(p1);
126              mDbUtils.saveOrUpdate(c);
127             // mDbUtils.saveOrUpdateAll(list);
128         } catch (DbException e) {
129             e.printStackTrace();
130         }
131     }
132 }
 1 // 指定该类保存在数据库中的表名
 2 @Table(name = "Person")
 3 public class Person {
 4
 5     // 默认情况下id作为xUtil数据库的主键,而且自增长的
 6     // public int id;
 7
 8     @Id
 9     public String name;
10
11     public int age;
12
13     public String sex;
14
15     // @Foreign(foreign = "id")
16     // public Child mChild;
17
18     /**
19      * 若是重写了构造方法的话,必须提供一个不带 参数的构造方法,(查询的时候才会用到)
20      */
21     public Person() {
22
23     }
24
25     public Person(String name, int age, String sex) {
26         this.name = name;
27         this.age = age;
28         this.sex = sex;
29     }
30
31     @Override
32     public String toString() {
33         return "Person [name=" + name + ", age=" + age + ", sex=" + sex + ", mChild=" + "]\n";
34     }
35 }
 1 public class Child {
 2
 3     @Id
 4     public String name;
 5
 6     public String sex;
 7
 8     public int age;
 9
10     public Child() {
11
12     }
13
14     public Child(String name, String sex, int age) {
15         this.name = name;
16         this.sex = sex;
17         this.age = age;
18     }
19
20     @Override
21     public String toString() {
22         return "Child [ name=" + name + ", sex=" + sex + ", age=" + age + "]";
23     }
24 }
时间: 2024-10-09 10:21:48

xUtils-DbUitls的使用的相关文章

Android 最火开发框架 xUtils

xUtils简介 xUtils3 api变化较多, 已转至 https://github.com/wyouflf/xUtils3 xUtils 2.x对Android 6.0兼容不是很好, 请尽快升级至xUtils3. xUtils 包含了很多实用的android工具. xUtils 支持大文件上传,更全面的http请求协议支持(10种谓词),拥有更加灵活的ORM,更多的事件注解支持且不受混淆影响... xUitls 最低兼容android 2.2 (api level 8) 目前xUtils主

修复android 5.0 Xutils的框架问题retry error, curr request is null

Android 5.0手机对xUtils-2.6.13.jar请求时会出现retry error, curr request is null 情况, 修复解决方式: 找到library/src/com/lidroid/xutils/cache/KeyExpiryMap.java 感兴趣的关注一下微信订阅号爱开发:微信号:aikaifa 或扫描一下以下二维码: jar包下载

android 断点下载---XUtils

配置权限 <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> /MainActivity.java package com.bawei.myxutils; import java.io.File; import java.

xUtils更新到3.0后的基本使用规则

说实话,对于xUtils,是我最近才用到的开发框架(也是刚接触),对于其功能不得不说,简化了很多的开发步骤,可以说是非常好的开发工具,但是其最近更新到3.0也没有解决加载自定义ImageView报错的问题. 我总是喜欢用一些最新的东西,xUtils 3.0才刚更新,是一次比较大的重构,对于百度到的使用规则,基本都是3.0以前的,使得用3.0的开发者需要求解用法的时候,遇到许多阻碍,故此在这里简单介绍xUtils 3.0的使用规则.关于怎么导入功能,其实并不是本文的内容,不过在此文最后一节简单讲解

Xutils

实体类  用ViewUtils附加了注解  DbUtils可以直接创建数据库根据实体类的注解创建数据库的表 1 package com.qianfeng.xutilsshow.model; 2 3 import com.lidroid.xutils.db.annotation.Column; 4 import com.lidroid.xutils.db.annotation.Id; 5 import com.lidroid.xutils.db.annotation.Table; 6 7 8 /*

Android Xutils 框架

Android Xutils 框架 (转) 目录(?)[-] xUtils简介 目前xUtils主要有四大模块 使用xUtils快速开发框架需要有以下权限 混淆时注意事项 DbUtils使用方法 ViewUtils使用方法 HttpUtils使用方法 普通get方法 使用HttpUtils上传文件 或者 提交数据 到服务器post方法 使用HttpUtils下载文件 BitmapUtils 使用方法 其他更多示例代码见sample文件夹中的代码 输出日志 LogUtils xUtils简介 xU

.Net程序员安卓学习之路5:使用xutils注入View和事件以及图片的显示

xUtils注入和图片显示 之前我们写事件比如Btn的Click事件一般采用硬编码或者Linstener的方式来实现,从界面某个元素取值或者赋值必须首先使用findcontrol来找到他较为麻烦且难以维护,而这些使用xUtils就能很简洁的完成,比如下例我们实现点击Btn给文本框赋值操作: 点击Btn后: 要实现xUtils注入首先得在onCreate中加入: ViewUtils.inject(this); //注入view和事件 之后定义控件如下: @ViewInject(R.id.lbl_i

Xutils的简单总结

## xUtils简介* xUtils 包含了很多实用的android工具.* xUtils 最初源于Afinal框架,进行了大量重构,使得xUtils支持大文件上传,更全面的http请求协议支持,拥有更加灵活的ORM,更多的事件注解支持且不受混淆影响.* xUitls最低兼容android 2.2 (api level 8) ## 目前xUtils主要有四大模块: * DbUtils模块: > * android中的orm框架,一行代码就可以进行增删改查: > * 支持事务,默认关闭: &g

XUtils===XUtils3框架的基本使用方法

转载自:http://blog.csdn.NET/a1002450926/article/details/50341173 今天给大家带来XUtils3的基本介绍,本文章的案例都是基于XUtils3的API语法进行的演示.相信大家对这个框架也都了解过,下面简单介绍下XUtils3的一些基本知识. XUtils3一共有4大功能:注解模块,网络模块,图片加载模块,数据库模块. 使用XUtils只需要在libs文件夹里面加入一个jar包,如果对服务器返回的数据进行封装的话,还需要导入一个Gson的ja

Android:XUtils框架的简单应用

XUtils是目前git上比较活跃 功能比较完善的一个框架,是基于afinal开发的,比afinal稳定性提高了很多. xUtils简介 xUtils 包含了很多实用的android工具. xUtils 最初源于Afinal框架,进行了大量重构,使得xUtils支持大文件上传,更全面的http请求协议支持(10种谓词),拥有更加灵活的ORM,更多的事件注解支持且不受混淆影响... xUitls最低兼容android 2.2 (api level 8) 目前xUtils主要有四大模块: DbUti