Xutils3框架使用

目前Android开发很火的一个框架Xutils框架。它有四个模块:1、ViewUtils。2、HttpUtils。3、DbUtils。4、BitmapUtils

记得是去年的差不多这个时候,我的大学老师张老师介绍我去学习Xutils框架,当时项目有很多对数据库的操作,所以刚学习Xutils的时候,首先着重学习对DbUtils模块的使用,感受到了他的好用处。接下来为大家介绍一下Xutils框架的基本使用。

使用Xutils框架需要下载Xutils的jar包。(网上很好找,我使用的是xutils-3.3.25)

需要加入以下两个权限:

  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  <uses-permission android:name="android.permission.INTERNET" />

在Application中初始化Xutils框架 

  x.Ext.init(this); // 初始化Xutils框架  x.isDebug(); //开启Debug模式,对app性能有一些影响

(一)、DbUtils模块

  Xutils框架使用了注解的方式来方便了对数据的操作,如下:

  @Table(name = "t_person")  public class Person {

  @Column(name = "id", isId = true, autoGen = true, property = "unique")      public int id;

  @Column(name="username")      public String username;

  @Column(name="password")      public String password;  }    注意:id属性的注解设置为isId=true,就不用设置autoGen=true和property = "unique",这里只是演示有这么一个属性。设置autoGen=true可以让此字段自增,pr  operty="unique"可以让该字段唯一,当然也可以设置一些其他的限制。  接下来是对数据库的操作:  1)、收下获取DaoConfig实例    private static DbManager.DaoConfig getDaoconfig(Context context) {
    DbManager.DaoConfig daoConfig = new DbManager.DaoConfig(); //获取DaoConfig        daoConfig.setDbName("mydb.db"); //设置数据库名称        daoConfig.setDbVersion(1); //设置版本号        daoConfig.setDbDir(context.getDir("DATABASE", 0)); // 数据库位置为:data/data/包名/app_DATABASE        daoConfig.setDbOpenListener(new DbManager.DbOpenListener() {            @Override            public void onDbOpened(DbManager db) {                // 开启WAL, 对写入加速提升巨大                db.getDatabase().enableWriteAheadLogging();            }        });        return daoConfig;    }  2)、增删改查的操作    //获取DbManager    DbManager manager = x.getDb(getDaoconfig(context));  //获得DbManager    Person person = new Person();    person.name = "张三";    person.password = "123456";    //保存数据,调用manager的save方法直接保存对象到数据库(是不是感觉和Hibernate很像)    manager.save(person);    //保存或者更新数据,如果id在数据库中存在,则更新对象,不存在则添加为新的数据    manager.saveOrUpdate(person);    //删除数据,会删除数据库中与person的id相同的数据    manager.delete(person);    //查询数据,Xutils提供了几种查询方式,但是原理都是一样的,方便了开发人员的使用            List<Pseron> ps = manager.selector(Person.class).where("username", "=", "张三").and("password", "=", "12346").findAll();
      使用wher的参数为("列名", "运算符", "值")。运算符可以是“=”、“!=”、“<”、“<=”等等,并且可以根据实际情况添加add、or等条件。      使用findAll返回的是所有符合条件的数据的List集合,泛型为当前查询的实体类。findFirst只得到查询的第一条数据。总之findAll的查询结果是一个List集合,而        findFirst的查询结果是一个对象,这个也很好理解。

      如果只想查询某个列或者某几个列,可以用以下的方法:        DbModel model = manager.selector(Person.class).select("username","password").findFirst();      返回的是一个DbModel类型,它将查询到的数据已Key-Value的形式存在,如果需要得到某一列的数据,只需要model.getString("列名")、model.getInt("列名")        等就可以得到数据。
时间: 2024-10-24 23:49:30

Xutils3框架使用的相关文章

【进展】XUtils3框架的使用

刚刚SLP迎来了一个飞跃——成功地使用XUtils3框架从LL资源网站上拉取LIVE相关信息并显示成列表. 效果如下:

XUtils3框架的基本用法(一)

本文为作者原创,转载请指明出处: http://blog.csdn.net/a1002450926/article/details/50341173 今天给大家带来XUtils3的基本介绍.本文章的案例都是基于XUtils3的API语法进行的演示.相信大家对这个框架也都了解过,以下简介下XUtils3的一些基本知识. XUtils3一共同拥有4大功能:注解模块,网络模块.图片载入模块.数据库模块. 使用XUtils仅仅须要在libs目录里面增加一个jar包.假设对server返回的数据进行封装的

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

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

Android使用xUtils3上传图片报错解决:java.lang.ArrayIndexOutOfBoundsException: 70918

今天在使用安卓xUtils3框架配合SmartUpload框架上传图片到Java服务端时,遇到了一个莫名其妙的错误: 安卓端代码如下: 似乎并没有发现什么问题,以前在用xUtils2.6老版本时也是这样写的,完全可以上传. 经过与网上的源码对比发现,xUtils3框架默认没有开启multipart属性. 需要我们手动设置multipart编码: 设置的代码如下: 只要加一句这行代码就可以了: param.setMultipart(true); 最后,问题成功解决 原文地址:https://www

xUtils3.0框架学习笔记

xUtils是开速开发安卓项目的开源框架,开源项目地址:https://github.com/wyouflf/xUtils3.使用起来非常方便.主要功能包括: xUtils 支持超大文件(超过2G)上传,更全面的http请求协议支持(11种谓词). 拥有更加灵活的ORM,更多的事件注解支持且不受混淆影响. 图片绑定支持gif(受系统兼容性影响, 部分gif文件只能静态显示), webp; 支持圆角, 圆形, 方形等裁剪, 支持自动旋转等. 数据库api简化提高性能, 达到和greenDao一致的

xUtils3源码阅读之网络模块

关于xUtils3 xUtils 包含了很多实用的android工具. xUtils 支持超大文件(超过2G)上传,更全面的http请求协议支持(11种谓词),拥有更加灵活的ORM,更多的事件注解支持且不受混淆影响- xUtils 最低兼容Android 4.0 (api level 14). (Android 2.3?) xUtils3变化较多所以建立了新的项目不在旧版(github.com/wyouflf/xUtils)上继续维护, 相对于旧版本: HTTP实现替换HttpClient为Ur

Android开发常用流行开源框架记录

发掘了一些Android常用开源框架,记录并分享,希望能在开发当中帮到大家. 缓存: 名称:DiskLruCache 描述:Java实现基于LRU的硬盘缓存 源码地址(可能需要翻墙) 作者:guolin 相关博客:Android DiskLruCache完全解析,硬盘缓存的最佳方案 图片加载: Android-Universal-Image-Loader 描述:一个开源的UI组件程序,该项目的目的是提供一个可重复使用的仪器为异步图像加载,缓存和显示.所以,如果你的程序里需要这个功能的话,那么不妨

Android xUtils3源码解析之数据库模块

xUtils3源码解析系列 一. Android xUtils3源码解析之网络模块 二. Android xUtils3源码解析之图片模块 三. Android xUtils3源码解析之注解模块 四. Android xUtils3源码解析之数据库模块 配置数据库 DbManager.DaoConfig daoConfig = new DbManager.DaoConfig() .setDbName("test.db") .setDbVersion(1) .setDbOpenListe

Android xUtils3完全解析 是时候来了解xUtils3了

1.先来认识一下xUtils3 1)xUtils3简介 xUtils是基于Afinal开发的目前功能比较完善的一个Android开源框架,最近又发布了xUtil3.0,在增加新功能的同时又提高了框架的性能,下面来看看官方(https://github.com/wyouflf/xUtils3)对xUtils3的介绍: xUtils包含了很多实用的android工具: xUtils支持超大文件(超过2G)上传,更全面的http请求协议支持(11种谓词),拥有更加灵活的ORM,更多的事件注解支持且不受