Xutils的使用 转载 带自己细细研究

单例模式static DbUtils db = null;
  public static DbUtils getDb(Context context) {
    if (context == null) {
      context = DoctorApplication.getInstance();
    }
    if (db == null) {
      db = DbUtils.create(context, "xUtils.db");
    });
    db.configAllowTransaction(true);
    return db;
  }
    db.configAllowTransaction(true);
    return db;
}

创建实体
@Table(name = "User")
  public class User {
    private int id; //主键ID,必须
    private String uid;  
    private String type;
    public int getId() {
          return id;
      }
       public void setId(int id) {
            this.id = id;
      }
    public String getType() {
      return type;
    }  
    public void setType(String type) {
      this.type = type;
    }
    public String getUid() {
      return uid;
    }
    public void setUid(String uid) {
      this.uid = uid;
    }
  }

基础操作

// 查找,根据主键ID查找
User userTemp = db.findById(User.class, user.getId());
List<User> list = db.findAll(User.class);//通过类型查找,查找所有

User user = db.findFirst(Selector.from(User.class).where("type","=","0"));

// IS NULL
User user = db.findFirst(Selector.from(User.class).where("type","=", null));
// IS NOT NULL
User user = db.findFirst(Selector.from(User.class).where("type","!=", null));
List<User> list = db.findAll(Selector.from(User)
                                   .where("id" ,"<", 54)
                                   .and(WhereBuilder.b("id", ">", 20).or("id", " < ", 30))
                                   .orderBy("id")
                                   .limit(pageSize)
                                   .offset(pageSize * pageIndex));

// op为"in"时,最后一个参数必须是数组或Iterable的实现类(例如List等)
User test = db.findFirst(Selector.from(User.class).where("id", "in", new int[]{1, 2, 3}));
// op为"between"时,最后一个参数必须是数组或Iterable的实现类(例如List等)
User test = db.findFirst(Selector.from(User.class).where("uid", "between", new String[]{"1", "5"}));

DbModel dbModel = db.findDbModelAll(Selector.from(User.class).select("uid"));//select("name")只取出name列
List<DbModel> dbModels = db.findDbModelAll(Selector.from(User.class).groupBy("type").select("uid", "count(uid)"));
...

List<DbModel> dbModels = db.findDbModelAll(sql); // 自定义sql查询
db.execNonQuery(sql) // 执行自定义sql

//多条件混合查询

List<User> userEnts = TCommUtil.getDb(this).findAll(Selector.from(User.class).where(WhereBuilder.b("id", ">", 5).or("id", "<", 3)).and("uid", "=", "0"));

//模糊查询like

 String str = "select id,nickname,age,gender,zhenduan,avatar,pid,type from User where uid = "

+ uid

+ " and type like ‘%"

+ value + "%‘";

Cursor cursor = TCommUtil.getDb(this).execQuery(str);

cursor.moveToFirst();

for (int i = 0; i < cursor.getCount(); i++) {

  User userEnt = new User();

   userEnt.setId(cursor.getInt(0));

   ...

  cursor.moveToNext();

}

cursor.close();

时间: 2024-08-06 16:04:39

Xutils的使用 转载 带自己细细研究的相关文章

(转载)Fiddler实战深入研究(二)

原文来源于:http://www.cnblogs.com/tugenhua0707/p/4637771.html,作者:涂根华 !个人觉得文章写的特别好,故收藏于此,感谢原作者的分享 Fiddler实战深入研究(二) 阅读目录 Fiddler不能捕获chrome的session的设置 理解数据包统计 请求重定向(AutoResponder) Composer选项卡 Filters选项卡断点调式 Fiddler 中的Stave插件 回到顶部 Fiddler不能捕获chrome的session的设置

【转载】音乐检索研究现状:

音乐检索研究现状: 从搜索的目标分,主要可分为两大类:SEARCHING SYMBOLIC DATA,SEARCHING AUDIO DATA.我对这两类的理解是:前者是检索乐谱:后者则是检索音频. SEARCHING SYMBOLIC DATA 1           String-based methods for monophonic melodies 由于这种方式最终是把音乐转化成一种字符串的形式,因此后期的检索就可以用到很多字符串比较的算法,比如计算编辑距离,寻找最长公共子串,找到一个

那些值得你去细细研究的Drawable适配

一直都是在自家的盒子上开发App,很少接触到Android适配的问题.但是不得不说Android严重的碎片化,对于应用开发者来说,学会Android适配的是必要的.意识到自己就得不足就马上行动,而Android适配的问题太多,有屏幕尺寸的适配.屏幕分辨率的适配以及android不同系统版本的适配.反映在代码上来说,就是需要在资源文件上面下功夫,主要是layout和drawable文件目录下的文件,这里主要就研究一下drawable的适配. Q:Android项目中那么多drawable(mdpi

3. 深入研究 UCenter API 之 加密与解密(转载)

1.  深入研究 UCenter API 之 开篇 (转载) 2.  深入研究 UCenter API 之 通讯原理(转载) 3.  深入研究 UCenter API 之 加密与解密(转载) 4.  深入研究 UCenter API 之 网站搭建(转载) 5.  深入研究 UCenter API 之 MVC 网站下的用法(转载) 6.  下载地址:UCenter API For .Net 在 CodePlex 上发布啦!(转载) AuthCode UCenter API 中的加密解密函数,被称为

Gradle构建可执行Jar包(转载请注明出处)

最近开始接触Java,认识到一个似乎比Maven好用的构建工具Gradle,还来不及细细研究,但是需要构建一个可执行Jar包.上网查了一下.中文的文章千篇一律的提到一个插件apply plugin: 'executable-jar' (https://github.com/stigkj/gradle-executable-jar-plugin) ,也不知道是谁复制了谁的. 但是构建的时候不认这个插件,所以寻找其他方法. 用压缩软件打开Eclipse生成的可执行Jar包与Gradle构建的Jar包

我和NLP的故事(转载)

正值ACL录用结果发布,国内的老师和同学们又是一次大丰收,在这里再次恭喜所有论文被录用的老师和同学们!我人品爆发,也收获了自己硕士阶段的第二篇ACL论文.本来只是想单纯分享下自己中论文的喜悦,但没成想收到这么多老师和同学的祝贺与鼓励,实在是受宠若惊,在这里也再次感谢各位老师和同学,期待与大家在ACL进行面对面的交流. 我的微博发布后,龙星镖局大神发来邀请,希望我能写一篇小文讲一讲自己的研究.但作为一个小硕士生诚然没什么拿的出手的成果,思来想去,就讲一讲这几年来做NLP研究的经历与感受好了,希望能

【转载】硬盘MBR详细介绍

原文地址:http://blog.chinaunix.net/uid-15007890-id-106892.html 硬盘MBR详细介绍 硬盘是现在计算机上最常用的存储器之一.我们都知道,计算机之所以神奇,是因为它具有高速分析处理数据的能力.而这些数据都以文件的形式存储在硬盘里.不过,计算机可不像人那么聪明.在读取相应的文件时,你必须要给出相应的规则.这就是分区概念. 分区从实质上说就是对硬盘的一种格式化.当我们创建分区时,就已经设置好了硬盘的各项物理参数,指定了硬盘主引导记录(即Master

IOS 音频播放

iOS音频播放 (一):概述 Audio Playback in iOS (Part 1) : Introduction 前言 从事音乐相关的app开发也已经有一段时日了,在这过程中app的播放器几经修改我也因此对于iOS下的音频播放实现有了一定的研究.写这个系列的博客目的一方面希望能够抛砖引玉,另一方面也是希望能帮助国内其他的iOS开发者和爱好者少走弯路(我自己就遇到了不少的坑=.=). 本篇为<iOS音频播放>系列的第一篇,主要将对iOS下实现音频播放的方法进行概述. 基础 先来简单了解一

CAPI 初探及使用小结(4)

限于能力和时间,文中定有不少错误,欢迎指出,邮箱[email protected], 期待讨论.由于绝大部分是原创,即使拷贝也指明了出处(如有遗漏请指出),所以转载请表明出处http://www.cnblogs.com/e-shannon/ http://www.cnblogs.com/e-shannon/p/7495618.html 4开放的coherent加速接口 正如第一节所说的,为了满足加速需求,业界为CPU高性能一致性接口(high performance coherence inte