Android数据库框架GreenDao使用详解
来源:互联网 发布:阿里云cdn审核 编辑:程序博客网 时间:2024/05/16 19:39
有关GreenDao的介绍在文章中就不详细介绍了,简单介绍下它的优点。大家可以去官网看看,点击此处查看Greendao官网。
GreenDao是ORM框架,所谓的ORM就是映射型框架。这里指的是对象Object映射到数据库的一种方法。该框架的优点简洁地说就是,轻巧,快捷,占用内存小,加载快,安全等。好了,咱们开始正式地使用它。
- 第一步:在root下的build.gradle添加greendao插件
classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2'//第一步,在root下的build.gradle下添加插件
- 接下来如下图:添加插件及版本
//第二步:在module中添加插件apply plugin:'org.greenrobot.greendao'//第三步:添加greendao版本greendao{ schemaVersion 1 targetGenDir 'src/main/java' //第四步:导入框架类库compile 'org.greenrobot:greendao:3.2.2'
- 导入greendao类库
在配置完了之后创建实体类测试是否配置成功。
我们创建一个Student类。代码如下:
@Entitypublic class Student { @Id(autoincrement = true) private Long id; @Property(nameInDb = "NAME") private String name;//姓名 @Property(nameInDb = "AGE") private int age;//年龄 @Property(nameInDb = "ADDRESS") private String address;//地址}
点击build----->>>make project。看是否自动生成set和get方法。
生成结果如下图,
我们可以看到多出了三个文件,分别是DaoMaster,DaoSession,StudentDao。右侧我们也明显看到了自动生成了新的代码。
接下来,我们写个Activity进行测试。
MainActivity的代码如下:
package com.chenlei.greendao;import android.database.sqlite.SQLiteDatabase;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.support.v7.widget.ButtonBarLayout;import android.util.Log;import android.view.View;import android.widget.Button;import com.chenlei.greendao.Entity.DaoMaster;import com.chenlei.greendao.Entity.DaoSession;import com.chenlei.greendao.Entity.Student;import com.chenlei.greendao.Entity.StudentDao;public class MainActivity extends AppCompatActivity { private static final String TAG = "测试"; private Button btn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn=(Button) findViewById(R.id.btn_add_01); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //构建一个对象 Student xiaoming = new Student(); xiaoming.setName("小明"); xiaoming.setAge(16); xiaoming.setAddress("胜利街"); //创建数据库 DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(getApplicationContext(),"test.db",null); //得到数据库对象 SQLiteDatabase db=devOpenHelper.getWritableDatabase(); //得到DaoMaster对象 DaoMaster master = new DaoMaster(db); //通过DaoMaster得到DaoSession对象 DaoSession session = master.newSession(); //通过DaoSession创建一个Dao对象 StudentDao studentDao = session.getStudentDao(); //通过Dao来操作数据库 studentDao.insert(xiaoming); Log.d(TAG,"此时的id是"+xiaoming.getId()); } }); }}
在这里我对上面的步骤的总结为,首先通过D后通过服evOpenHelper对象创建数据库db,然后通过该工具类得到框架服务器DaoMaste对象,然务器DaoMaste对象得到对话状态DaoSession 对象,通过DaoSession来创建新的xxxDao对象。最后即可通过xxxDao来管理数据库进行数据库增删除查操作。
当我们不断点击按钮时候,此时的id的值打印如下图。说明插入对象成功,由于字段没有声明为unique唯一的,所以不断插入同样的对象是可以成功的,不过每个对象的id不同。
Greendao查询数据时候采用queryBuilder来进行查询,然后将查询结果通过list集合展示。
下面是查询名字是小明的所有成员。
List<Student> s = studentDao.queryBuilder().where(StudentDao.Properties.Name.eq("小明")).list();
通过上面代码就得到了所有的名为小明的成员。
在官方文档上表示,在查询时候可以进行排序。分为升序orderAsc和降序descAsc。
下面是实例代码,将对查询到的结果通过orderAsc排序后再利用list集合封装。
List<Student> studentsLs = studentDao.queryBuilder().where(StudentDao.Properties.Name.eq("小明")).orderAsc(StudentDao.Properties.Id).list();
阅读全文
1 1
- Android数据库框架GreenDao使用详解
- Android GreenDao数据库框架使用
- Android 初使用GreenDAO框架操作数据库
- android高效ORM数据库框架greenDao使用
- Android studio使用greendao作为数据库框架
- Android ORM 框架:GreenDao 使用详解
- greenDao 数据库框架 使用
- Android 中数据库框架GreenDao与LitePal对比、集成、使用详解,greendao与原生SQLite性能对比
- Android studio,使用greenDao第三方数据库框架操作数据库
- Android 数据库 GreenDao使用
- Android下Sqlite数据库ORM框架之GreenDao详解
- Android下Sqlite数据库ORM框架之GreenDao详解
- Android GreenDao使用详解
- android数据库ORM框架GreenDao
- android sqlite数据库框架greenDAO
- Android数据库ORM框架-greenDAO
- 使用ORM数据库框架greenDao
- GreenDao数据库框架的使用
- 函数对象和函数指针
- Java环境的搭建
- python(函数)
- 使用maven构建工具的好处
- mysql初始化出现:Installing MySQL system tables.../usr/local/mysql/bin/mysqld: error while loading shared
- Android数据库框架GreenDao使用详解
- 友盟崩溃日志分析
- JS nodeType返回类型
- 使用类和多文件编译
- C# .ToString() 格式化
- Linux命令大全
- JAVA 8函数式编程(四):JAVA支持闭包吗?
- 抽象类(abstract class | interface)
- HDU-2017 多校训练赛10-1002-Array Challenge