GreenDao的增删改查语句

首先编写一个MyApplication类继承Application类

package com.example.sean.greendaotest_2;

import android.app.Application;
import android.database.sqlite.SQLiteDatabase;

import GreenDao.greendao.db.DaoMaster;
import GreenDao.greendao.db.DaoSession;

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;
}

/**
 * 设置greenDao
 */
private void setDatabase() {
    mHelper = new DaoMaster.DevOpenHelper(
            this, "user_db", null);
    db = mHelper.getWritableDatabase();
    mDaoMaster = new DaoMaster(db);
    mDaoSession = mDaoMaster.newSession();
}
public DaoSession getDaoSession() {
    return mDaoSession;
}
public SQLiteDatabase getDb() {
    return db;
}

}

我将其对数据库的操作封装到了一个Util类里面,具体代码如下:

package com.example.sean.greendaotest_2;

import java.util.List;

import GreenDao.greendao.db.UserDao;

/*
 * 数据库增删改查工具类
 * */
public class DaoUtil {
private UserDao userDao;

/*
 * 增加数据
 * */
public void addUser(String name, int age) {
    userDao = MyApplication.getInstances().getDaoSession().getUserDao();
    User user = new User();
    user.setAge(age);
    user.setName(name);
    userDao.insertOrReplace(user);
}

/*
 * 删除数据,通过Key删除
 * */
public void deleteUser(long id) {
    userDao = MyApplication.getInstances().getDaoSession().getUserDao();
    userDao.deleteByKey(id);
}

/*
 * 查询数据
 * */
public String[] queryUser() {
    //StringBuilder sb = new StringBuilder();
    userDao = MyApplication.getInstances().getDaoSession().getUserDao();
    List<User> userList = userDao.loadAll();
    String[] temp = new String[userList.size()];
    for (int i = 0; i < userList.size(); i++) {
      /*  String temp = "";
        temp += "ID = " + userList.get(i).getId();
        temp += "Name = " + userList.get(i).getName();
        temp += "Age = " + userList.get(i).getAge();
        sb.append(temp);*/
        temp[i] += "ID = " + userList.get(i).getId();
        temp[i] += "NAME = " + userList.get(i).getName();
        temp[i] += "AGE = " + userList.get(i).getAge();
    }
    return temp;
}

/*
 * 修改数据
 * */
public void updateUser(String name, int age, long id) {
    userDao = MyApplication.getInstances().getDaoSession().getUserDao();
    User user = new User();
    user.setId(id);  //根据Id来查找到数据,并且修改数据
    user.setAge(age);
    user.setName(name);
    userDao.update(user);
}
}

关于GreenDao的配置,可以查看我的其他博文,以上就是GreenDao的简单使用,如有不足,请多指教。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值