网络连接之——xUtils 介绍(三)
来源:互联网 发布:串口检测软件 编辑:程序博客网 时间:2024/05/16 15:25
前面的文章,我们介绍了ViewUtils和HttpUtils,这里我们来再来介绍一下剩下的两个组件:DbUtils和BitmapUtils。
可以参考大神博客哈:
http://blog.csdn.net/lanyeming2012/article/details/14147975
DbUtils
大家都知道,在Android里面如果要存储一个对象,我们需要创建一个SQLiteOpenHelper,然后还得创建一张对应对象各个属性的表,还得继续把我们的对象转换成ContentValues,进而去存储。真心是麻烦的不能再麻烦了,我们现在介绍的DbUtils就能让你轻松解脱麻绳一样的代码。DbUtils在进行save操作的时候,会根据java反射反射出对象的各个字段,然后去查询数据库中是否存在这个对象类型对应的表,如果表已经存在,直接进行插入操作;如果不存在,就先动态的创建的一张对应我们对象的表,再进行插入处理。
这里插入一个小知识点:由于我们使用xUtils时需要导包,而使用studio时导包很容易,直接从Dependences处搜索,下载即可,而它存到了哪里很多人却并不知道。楼主废了九牛二虎之力终于找到了它在项目下的路径哈:项目路径\app\build\intermediates\exploded-aar.
补充:
注意:并不是所有的实体对象都快可以通过这种方式去存储,一定要保证对象的类型中有int类型的id或者_id的属性,这就对应数据库表中的主键字段。如果类型中没有id字段,可以通过@Id注解去指定一个int类型的字段作为主键。如果表中的又字段不想被存储在数据库中,也可以通过@Transient去实现忽略。如果直接存储一个对象的列表,这样也是被允许的,达到批量存储的目的。
数据类model的注解设置:
@Table(name="user") //注解数据表名public class User { @Id(column="id") //或者使用@Column(column="id") private String id; private String name;//由于name和password和数据库表中的列名一致,可以不进行注释,否则必须注释 private String password; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; }}
解析:使用@Table(name=”user”)来注解表名,使用@Id(column=”id”)来注解id,其他属性如果名字和数据表中的列名一致,可以不用进行注解。
使用DbUtils进行数据的操作:
DbUtils dbUtils = DbUtils.create()//创建数据库
- 插入:
- 查找:
DbUtils dbUtils = DbUtils.create(this,"MY_FIRST_DB.db"); try { List<User> users = dbUtils.findAll(Selector.from(User.class));//2.获得所有数据,从User类中,根据注解 for(User user:users){ Log.d("cursor", "用户名"+user.getName()+"密码"+user.getPassword()); } } catch (DbException e) { // TODO Auto-generated catch block e.printStackTrace(); }
解析:先利用DbUtils中的create()方法创建数据库,然后使用其findAll()方法进行查找。
- 修改:
- 删除:
- 网络连接之——xUtils 介绍(三)
- 网络连接之———xUtils框架 介绍(二)
- 网络连接之-xUtils框架(第三方通信框架)介绍(一)
- xUtils框架介绍(三)
- xUtils框架介绍(三)
- xUtils框架介绍(三)
- 网络连接之HttpClient,Volley,xUtils
- Androdi网络连接——WebView、Volley、xutils
- xUtils框架的介绍(三)
- xUtils框架的介绍(三)
- xUtils框架的介绍(三)
- 快速开发之xUtils(三)DbUtils详细介绍
- xUtils之网络请求
- Android网络连接---xUtils(HttpUtils)
- Android第九讲——网络(六)xUtils
- Xutils使用手册(四)——网络请求
- xutils使用手册(三)——IOC注入
- Xutils框架之网络请求
- android 分辨率自适应
- uva 11383 Golden Tiger Claw 二分图完美匹配
- 欢迎使用CSDN-markdown编辑器
- Halcon学习之仿射变换3
- Java web访问MySql数据库分页查询
- 网络连接之——xUtils 介绍(三)
- C#跨线程操作控件
- n-1位数(http://acm.nyist.net/JudgeOnline/problem.php?pid=96)
- android学习之路之ListView
- mongoDB 介绍
- Hibernate @Temporal的使用
- Ext图表上显示数据
- srm 543
- 老王说ros的tf库