GreenDao简单配置使用
来源:互联网 发布:淘宝发布宝贝下架 编辑:程序博客网 时间:2024/06/04 19:45
当前开发的一个项目,需要用到本地数据库,之前没用到过,然而要求用GreenDao,无奈,只好学一下,并做一下记录。
先从配置开始。创建一个Demo来说明。
首先就是配置build.gradle(分Project和Module),两个都得配。。
首先配Project的gradle,如图,就一行:
然后配置Module的gradle,如图:
最后:
然后同步一下即可 这样,gradle就算配置完了
然后Application中初始化一些数据库配置,创建一个MyApplication
package com.example.lenovo.demo.activity;import android.app.Application;import android.database.sqlite.SQLiteDatabase;import com.example.lenovo.demo.dao.DaoMaster;import com.example.lenovo.demo.dao.DaoSession;/** * Created by lenovo on 2017/5/19. */public class MyApplication extends Application { private DaoMaster.DevOpenHelper mHelper; private SQLiteDatabase db; private DaoMaster mDaoMaster; private DaoSession mDaoSession; public static MyApplication instances; @Override public void onCreate() { super.onCreate(); instances = this; setDatabase(); } public static MyApplication getInstances(){ return instances; } private void setDatabase() { // 通过 DaoMaster 的内部类 DevOpenHelper,你可以得到一个便利的 SQLiteOpenHelper 对象。 // 可能你已经注意到了,你并不需要去编写「CREATE TABLE」这样的 SQL 语句,因为 greenDAO 已经帮你做了。 // 注意:默认的 DaoMaster.DevOpenHelper 会在数据库升级时,删除所有的表,意味着这将导致数据的丢失。 // 所以,在正式的项目中,你还应该做一层封装,来实现数据库的安全升级。 mHelper = new DaoMaster.DevOpenHelper(this, "notes-db", null);//notes-db为数据库的名字,可自定义 db = mHelper.getWritableDatabase(); // 注意:该数据库连接属于 DaoMaster,所以多个 Session 指的是相同的数据库连接。 mDaoMaster = new DaoMaster(db); mDaoSession = mDaoMaster.newSession(); } public DaoSession getDaoSession() { return mDaoSession; } public SQLiteDatabase getDb() { return db; }}
————————————————————————————————————————————————————————————
简单使用:
1、创建表,其实就是将一个实体类中的各字段数据设置成表
比如:设置好属性后,rebuild一下工程,就会自动生成get set方法
package com.example.lenovo.demo.entity;import org.greenrobot.greendao.annotation.Entity;import org.greenrobot.greendao.annotation.Generated;import org.greenrobot.greendao.annotation.Unique;/** * Created by lenovo on 2017/5/19. */@Entitypublic class Person { @Unique private String name; private int age; private String sex; private int salary; @Generated(hash = 448501173) public Person(String name, int age, String sex, int salary) { this.name = name; this.age = age; this.sex = sex; this.salary = salary; } @Generated(hash = 1024547259) public Person() { } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public int getSalary() { return this.salary; } public void setSalary(int salary) { this.salary = salary; }}
然后就可以对该表进行操作了,当然现在是空表,里面只有字段,只有默认数据,可以自行模拟增删改查,而且都是dao在操作整个表!
例如:先获取dao实例
PersonDao dao = MyApplication.getInstances().getDaoSession().getPersonDao();
然后增删改查等等
例:
dao.insertOrReplace(person);//插入或更新(会判断实体是否重复,如果存在该实体,就会直接替换),前提:某属性设置了@unique,并且是按照该属性查出来的bean,当需要再次插入时,可以使用这个。 dao.insert(person);//插入,不会去判断实体是否重复 Person person = dao.queryBuilder().where(PersonDao.Properties.Name.eq("小明")).unique();//单条件查询单个实体 dao.queryBuilder().where(PersonDao.Properties.Name.eq("小明"),PersonDao.Properties.Age.eq(10)).unique();//多条件查询单个实体 dao.queryBuilder().where(PersonDao.Properties.Sex.eq(20)).list();//单条件查询列表,多条件同理。
dao.update(bean);//更新实体,前提:表中增加了
@Idprivate Long id;
阅读全文
0 0
- greenDAO 简单使用配置
- GreenDao简单配置使用
- greenDao的简单配置和使用
- Android GreenDao 3.1简单配置与使用
- GreenDao的配置和简单的使用
- greenDAO简单使用经验
- GreenDAO的简单使用
- greenDAO简单使用经验
- greenDao简单使用
- Greendao简单使用
- GreenDao数据库简单使用
- GreenDao使用简单封装
- GreenDAO的简单使用
- GreenDao 3.0简单使用
- GreenDao的简单使用
- greendao的简单使用
- GreenDao的简单使用
- GreenDao 3.0简单使用
- HTML关键字<5>
- Spark内部机制学习笔记
- 说说对于编码字符集的简单认识
- android 递归监控目录或者文件
- HTML调OCX
- GreenDao简单配置使用
- Eclipse建立Maven项目后无法建立src/main/java资源文件夹的办法
- Android加载Gif动画android-gif-drawable的使用
- jquery的一些实例
- c++实验5:数组分离
- LearnOpenGL学习之着色器
- C语言关键字
- matlab 中imagesc的用法
- vue1和vue2的区别