xutils DbUtils框架
来源:互联网 发布:windows 日志服务器 编辑:程序博客网 时间:2024/06/11 23:51
框架地址:https://github.com/wyouflf/xUtils
需要的权限
<uses-permissionandroid:name="android.permission.INTERNET"/>
<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
创建数据库
DaoConfig config = new DaoConfig(context);
config.setDbName("xUtils-demo"); //db名
config.setDbVersion(1); //db版本
DbUtils db = DbUtils.create(config);//db还有其他的一些构造方法,比如含有更新表版本的监听器的
创建表
db.createTableIfNotExist(User.class); //创建一个表User
db.save(user);//在表中保存一个user对象。最初执行保存动作时,也会创建User表
删除表
db.dropTable(User.class);
开启事务
db.configAllowTransaction(true);
db相关Annotation
@Check check约束
@Column 列名
@Finder 一对多、多对一、多对多关系(见sample的Parent、Child中的使用)
@Foreign 外键
@Id 主键,当为int类型时,默认自增。 非自增时,需要设置id的值
@NoAutoIncrement 不自增
@NotNull 不为空
@Table 表名
@Transient 不写入数据库表结构
@Unique 唯一约束
一些常用方法
DbUtils db = DbUtils.create(this);User user = new User(); //这里需要注意的是User对象必须有id属性,或者有通过@ID注解的属性user.setEmail("wyouflf@qq.com");user.setName("wyouflf");db.save(user); // 使用saveBindingId保存实体时会为实体的id赋值...// 查找Parent entity = db.findById(Parent.class, parent.getId());List<Parent> list = db.findAll(Parent.class);//通过类型查找Parent Parent = db.findFirst(Selector.from(Parent.class).where("name","=","test"));// IS NULLParent Parent = db.findFirst(Selector.from(Parent.class).where("name","=", null));// IS NOT NULLParent Parent = db.findFirst(Selector.from(Parent.class).where("name","!=", null));// WHERE id<54 AND (age>20 OR age<30) ORDER BY id LIMIT pageSize OFFSET pageOffsetList<Parent> list = db.findAll(Selector.from(Parent.class) .where("id" ,"<", 54) .and(WhereBuilder.b("age", ">", 20).or("age", " < ", 30)) .orderBy("id") .limit(pageSize) .offset(pageSize * pageIndex));// op为"in"时,最后一个参数必须是数组或Iterable的实现类(例如List等)Parent test = db.findFirst(Selector.from(Parent.class).where("id", "in", new int[]{1, 2, 3}));// op为"between"时,最后一个参数必须是数组或Iterable的实现类(例如List等)Parent test = db.findFirst(Selector.from(Parent.class).where("id", "between", new String[]{"1", "5"}));DbModel dbModel = db.findDbModelAll(Selector.from(Parent.class).select("name"));//select("name")只取出name列List<DbModel> dbModels = db.findDbModelAll(Selector.from(Parent.class).groupBy("name").select("name", "count(name)"));...List<DbModel> dbModels = db.findDbModelAll(sql); // 自定义sql查询db.execNonQuery(sql) // 执行自定义sql...
Android xUtils框架(一)DbUtils
标签:android 框架 xutils
原文:http://blog.csdn.net/jjwwmlp456/article/details/44084411
- xUtils框架—DbUtils
- xutils DbUtils框架
- xUtils框架之DbUtils
- Android xUtils框架(一) DbUtils
- Android xUtils框架(一)DbUtils
- xUtils框架——DbUtils
- Android xUtils框架(一) DbUtils
- android高级框架xUtils之DbUtils
- xUtils框架DBUtils数据库版本升级方案
- Android Xutils框架使用之DBUtils
- Xutils框架中关于DbUtils的使用
- Android:开源框架xutils介绍之 DbUtils
- Android高级之xUtils框架(四):DBUtils的用法
- Android高级之xUtils框架(四):DBUtils的用法
- xUtils中DbUtils用法
- xUtils DbUtils数据库
- XUtils中的dbUtils用法
- xUtils系列之DbUtils-概览
- LeetCode—404. Sum of Left Leaves
- 虚拟机自定义安装详解
- UICollectionView的cell拖动交换位置
- Java高新技术——内省(JavaBean)
- 使用fastjson的parseObject方法将json字符串转换成Map
- xutils DbUtils框架
- GSON解析json的学习笔记
- Android学习笔记2
- Android内存管理及Memory Leak、OOM分析
- Grandpa's Estate (稳定凸包)
- http协议C语言编程实现
- hibernate一级缓存和二级缓存
- Java之IO流---字节流
- 堆排序 Java