GreenDao简单使用
来源:互联网 发布:掌上电脑写卡软件 编辑:程序博客网 时间:2024/06/05 10:06
一.导入依赖
1.在project的gradle下
classpath 'org.greenrobot:greendao-gradle-plugin:3.2.1'
2.在app的gradle下
2.1在最上方
apply plugin: 'org.greenrobot.greendao'
2.2在android{ }里 (此处的包名需要修改成自己的)
greendao { schemaVersion 1 daoPackage 'com.test.greendao2.gen' targetGenDir 'src/main/java' }
2.3在最下边的dependencies { }里
compile 'org.greenrobot:greendao:3.2.0'
二.编写代码
1创建一个实体类User
/** * @Entity表示这个实体类一会会在数据库中生成对应的表 * @Id表示该字段是id,注意该字段的数据类型为包装类型Long * @Property则表示该属性将作为表的一个字段 * @Transient,该注解表示这个属性将不会作为数据表中的一个字段 * @NotNull表示该字段不可以为空 * @Unique表示该字段唯一 * * 成功之后系统会帮助我们生成相应的构造方法和get/set方法,并且还会在我们的包下生成DaoMaster和DaoSession */@Entity public class User { @Id private Long id; @Property(nameInDb = "USERNAME") private String username; @Property(nameInDb = "NICKNAME") private String nickname; }
创建之后运行一下项目,成功之后系统会帮助我们生成相应的构造方法和get/set方法,并且还会在我们的包下(gen包)生成DaoMaster和DaoSession
布局我用了4个button按钮,分别是增删改查
然后是进行增删改查的操作了(建议使用ButterKnife,比较简便省事,我懒得再改了)
MainActivity.java
public class MainActivity extends AppCompatActivity { private UserDao userDao; private Button badd,bsel,bup,bdel; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取控件 badd = (Button) findViewById(R.id.badd); bsel = (Button) findViewById(R.id.sel); bup = (Button) findViewById(R.id.update); bdel = (Button) findViewById(R.id.del); //数据库的初始化 DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(getApplicationContext(), "lenve.db", null); DaoMaster daoMaster = new DaoMaster(devOpenHelper.getWritableDb()); DaoSession daoSession = daoMaster.newSession(); //获取UserDao userDao = daoSession.getUserDao(); /*点击事件*/ //添加 badd.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Random random = new Random(); User user = new User(null, "zhangsan" + random.nextInt(9999),"张三"); userDao.insert(user); } }); //查询 bsel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { List<User> list = userDao.queryBuilder() .where(UserDao.Properties.Id.between(2, 13)).limit(5).build().list(); for (int i = 0; i < list.size(); i++) { Log.d("google_lenve", "search: " + list.get(i).getUsername()); } } }); //修改(修改数据先查询,再修改) bup.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { User user = userDao.queryBuilder() .where(UserDao.Properties.Id.ge(10), UserDao.Properties.Username.like("%90%")).build().unique(); if (user == null) { Toast.makeText(MainActivity.this, "用户不存在!", Toast.LENGTH_SHORT).show(); }else{ user.setUsername("王五"); userDao.update(user); } } }); //删除(删除数据和修改数据的思路一样,都是要先查找到数据) bup.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { List<User> userList = (List<User>) userDao.queryBuilder().where(UserDao.Properties.Id.le(10)).build().list(); for (User user : userList) { userDao.delete(user); } } }); }}
阅读全文
0 0
- greenDAO简单使用经验
- GreenDAO的简单使用
- greenDAO简单使用经验
- greenDao简单使用
- Greendao简单使用
- GreenDao数据库简单使用
- GreenDao使用简单封装
- greenDAO 简单使用配置
- GreenDAO的简单使用
- GreenDao简单配置使用
- GreenDao 3.0简单使用
- GreenDao的简单使用
- greendao的简单使用
- GreenDao的简单使用
- GreenDao 3.0简单使用
- GreenDao简单使用
- GreenDao的简单使用
- GreenDao的简单使用
- 机器学习实战_k近邻算法源码详解
- 利用Python,获取Excel某列中(该列中每个单元格既有中文又有数字)的数字!!!!
- 剑指offer每日一刷-2017年11月15日
- 创建登陆界面
- 模拟实现strlen,strcpy,strcat,strcmp,strstr,memcpy,memmove
- GreenDao简单使用
- pycharm修改pip源为清华源-提高下载速度
- git 分支切换和 提交代码到远程分支 撤销add reset 撤销修改
- 火车票购票系统模拟
- 文件的存取
- 通过注解的方式向DAO中注入Sessionfactory
- 关于js原型连的思考
- hihocoder offer收割第一场
- 测试皮肤