代码
package com.example.myapplication; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Button; import android.widget.Toast; import com.example.myapplication.greendao.DaoMaster; import com.example.myapplication.greendao.DaoSession; import com.example.myapplication.greendao.UserDao; import org.greenrobot.greendao.database.Database; import java.util.ArrayList; import java.util.List; import butterknife.BindView; import butterknife.ButterKnife; import butterknife.OnClick; public class MainActivity extends AppCompatActivity { @BindView(R.id.main_add) Button mainAdd; @BindView(R.id.main_del) Button mainDel; @BindView(R.id.main_upa) Button mainUpa; @BindView(R.id.main_sel) Button mainSel; private DaoSession daoSession; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ButterKnife.bind(this); final DaoMaster.DevOpenHelper openHelper = new DaoMaster.DevOpenHelper(MainActivity.this, "data1_config"); final Database db = openHelper.getReadableDb(); final DaoMaster daoMaster = new DaoMaster(db); daoSession = daoMaster.newSession(); Button tz=findViewById(R.id.main_tz); tz.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent intent =new Intent(MainActivity.this,Main2Activity.class); startActivity(intent); } }); } @OnClick({R.id.main_add, R.id.main_del, R.id.main_upa, R.id.main_sel}) public void onViewClicked(View view) { switch (view.getId()) { case R.id.main_add: User user1=new User(7,"dong1",214); User user2=new User(5,"daa1",2212); User user3=new User(6,"dzz1",2313); List<String>li=new ArrayList<>(); li.add(user1.toString()); Toast.makeText(MainActivity.this,""+li.toString(),Toast.LENGTH_LONG).show(); daoSession.getUserDao().insert(user1); daoSession.getUserDao().insert(user2); daoSession.getUserDao().insert(user3); Toast.makeText(MainActivity.this,"添加成功",Toast.LENGTH_LONG).show(); break; case R.id.main_del: UserDao userDao = daoSession.getUserDao(); List<User> dong = userDao.queryBuilder().where(UserDao.Properties.Name.eq("dong1")).build().list(); if(dong.size()>0) { for (int i = 0; i < dong.size(); i++) { userDao.deleteAll(); } Toast.makeText(MainActivity.this,"删除成功",Toast.LENGTH_LONG).show(); } else{ Toast.makeText(MainActivity.this,"空",Toast.LENGTH_LONG).show(); } break; case R.id.main_upa: final UserDao userDao1 = daoSession.getUserDao(); final List<User> daa1 = userDao1.queryBuilder().where(UserDao.Properties.Name.eq("daa1")).build().list(); for (User daa:daa1) { daa.setAge(666); userDao1.update(daa); } Toast.makeText(MainActivity.this,"修改成功",Toast.LENGTH_LONG).show(); break; case R.id.main_sel: final List<User> users = daoSession.getUserDao().loadAll(); StringBuilder builder=new StringBuilder(); for (User users1:users) { builder.append(users1.getId()+""+users1.getName()+""+users1.getAge()); } if(builder.toString().equals("")||builder.toString().equals(null)) { Toast.makeText(MainActivity.this,"查询不到",Toast.LENGTH_LONG).show(); } Toast.makeText(MainActivity.this,""+builder.toString(),Toast.LENGTH_LONG).show(); break; } } }
----------------------------------------------------------------
配置
modle下build
apply plugin: 'com.android.application' apply plugin: 'org.greenrobot.greendao' android { compileSdkVersion 26 defaultConfig { applicationId "com.example.myapplication" minSdkVersion 15 targetSdkVersion 26 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } greendao { schemaVersion 2 // 数据库版本号 daoPackage 'com.example.myapplication.greendao' //设置DaoMaster、DaoSession、Dao所在的包名 targetGenDir 'src/main/java' //设置DaoMaster、DaoSession、Dao所在的目录 } } 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' compile 'org.greenrobot:greendao:3.2.0' compile 'org.greenrobot:greendao-generator:3.2.0' compile 'com.jakewharton:butterknife:8.5.1' annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1' }
project下build
apply plugin: 'com.android.application' apply plugin: 'org.greenrobot.greendao' android { compileSdkVersion 26 defaultConfig { applicationId "com.example.myapplication" minSdkVersion 15 targetSdkVersion 26 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } greendao { schemaVersion 2 // 数据库版本号 daoPackage 'com.example.myapplication.greendao' //设置DaoMaster、DaoSession、Dao所在的包名 targetGenDir 'src/main/java' //设置DaoMaster、DaoSession、Dao所在的目录 } } 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' compile 'org.greenrobot:greendao:3.2.0' compile 'org.greenrobot:greendao-generator:3.2.0' compile 'com.jakewharton:butterknife:8.5.1' annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1' }