1.先配置项目的builder.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {

    repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0'
classpath 'org.greenrobot:greendao-gradle-plugin:3.0.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
} allprojects {
repositories {
google()
jcenter()
}
} task clean(type: Delete) {
delete rootProject.buildDir
}

2.配置module.app的builder.gradle

apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao'
android {
compileSdkVersion
defaultConfig {
applicationId "com.lingdangmao.demo_zidingyi_textview"
minSdkVersion
targetSdkVersion
versionCode
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
} dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1' //greendao
api 'org.greenrobot:greendao:3.0.1'
api 'org.greenrobot:greendao-generator:3.0.0'
}
greendao {
schemaVersion
daoPackage 'com.anye.greendao.gen'
targetGenDir 'src/main/java'
}

3.创建一个用户的实例类,创建完之后,编译一下,会自动生成文件

@Entity
public class User {
@Id
private Long id;
private String name;
}

4.编写myapplication类继承application

public class MyApplication extends Application {
private DaoMaster.DevOpenHelper mHelper;
private SQLiteDatabase db;
private DaoMaster mDaoMaster;
private DaoSession mDaoSession;
public static MyApplication instance; public static MyApplication getInstance(){
return instance;
} @Override
public void onCreate() {
super.onCreate();
instance =this;
setDataBase();
}
private void setDataBase(){
mHelper = new DaoMaster.DevOpenHelper(this, "notes-db", null);
db = mHelper.getWritableDatabase();
// 注意:该数据库连接属于 DaoMaster,所以多个 Session 指的是相同的数据库连接。
mDaoMaster = new DaoMaster(db);
mDaoSession = mDaoMaster.newSession(); } public DaoSession getmDaoSession() {
return mDaoSession;
} public SQLiteDatabase getDb() {
return db;
}
}

5.在activity中操作

//根据条件查询
UserDao mUserdao = MyApplication.getInstance().getmDaoSession().getUserDao();
Query<User> query = mUserdao.queryBuilder().where(UserDao.Properties.Id.eq()).build();
User u= query.unique(); //没有就是null
Log.d(TAG, "onCreate11: "+u);
Log.d(TAG, "onCreate11: "+u.getId());
Log.d(TAG, "onCreate11: "+u.getName()); //添加
User mUser=new User((long),"mike");
//mUserdao.insert(mUser); //删除
//long id= 2;
//mUserdao.deleteByKey(id); //改
mUser = new User((long),"anye0803");
mUserdao.update(mUser); //查询
List<User> users = mUserdao.loadAll();
for(int i=;i<users.size();i++){
Log.d(TAG, "onCreate: "+users.get(i).getId());
Log.d(TAG, "onCreate: 1"+users.get(i).getName());
}

完成,上面是最基本的,实际开发中用到再看

最新文章

  1. 【原创】基于SVM作短期时间序列的预测
  2. Android开发之时间日期1
  3. ssh -v root@xxxxx 显示登录的细节
  4. ubuntu编译运行xv6
  5. 11.写一个函数,尽可能高效的,从一个标准 url 里取出文件的扩展名
  6. Python-基础-时间日期处理小结
  7. jquery学习笔记1
  8. Spark(二): 内存管理
  9. Seam carving 学习笔记
  10. JavaScript设计模式(一)
  11. 使用itextsharp创建PDF文档——图片集合
  12. 1. 数字根(Digital Root)
  13. 阅读《Android 从入门到精通》(12)——自己主动完毕文本框
  14. [BZOJ]1018 堵塞的交通(SHOI2008)
  15. 前端框架bootstrap(响应式布局)入门
  16. Lost connection to MySQL server during query,MySQL设置session,global变量及网络IO与索引
  17. React-Native 问题随记2: com.android.builder.testing.api.DeviceException
  18. MySQL - 日常操作三 mysql慢查询;
  19. 【转】从msql数据库处理高并发商品超卖
  20. for、for..in、forEach、$.each等循环性能测试

热门文章

  1. 阿里云提醒 网站被WebShell木马后门的处理过程
  2. 嵌入式框架Zorb Framework搭建二:环形缓冲区的实现
  3. [JSOI2007] 建筑抢修 (贪心 + 优先队列)
  4. Android面试收集录 电话、短信和联系人、多媒体技术
  5. PHP.40-TP框架商城应用实例-后台15-商品属性与库存量1-不同商品(唯一属性、可选属性),属性类型
  6. BLE(Bluetooth Low Energy)---first part
  7. 【C#】 引用类型
  8. android service笔记
  9. 失败的尝试,使用继承扩展数组,以及ES6的必要性
  10. python正则-字符串处理,主要用于处理请求参数格式为application/x-www-form-urlencoded的表单数据