1.配置module 的
首部配置下面一行:
apply plugin: 'org.greenrobot.greendao'
greendao指定生成的文件目录
2.配置project的build.gradle文件
dependencies { classpath 'com.android.tools.build:gradle:2.3.0' classpath 'org.greenrobot:greendao-gradle-plugin:3.2.1' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }
3.自定义User类,
package com.lele.hl_pc_java.greendao; import org.greenrobot.greendao.annotation.Entity; import org.greenrobot.greendao.annotation.Id; import org.greenrobot.greendao.annotation.Property; import org.greenrobot.greendao.annotation.Generated; /** * Created by HL-PC-JAVA on 2017/3/24. */ @Entity public class User { @Id(autoincrement = true) private Long id; @Property(nameInDb = "username") private String name; private int age; @Generated(hash = 1309193360) public User(Long id, String name, int age) { this.id = id; this.name = name; this.age = age; } @Generated(hash = 586692638) public User() { } public Long getId() { return this.id; } public void setId(Long id) { this.id = id; } public String getName() { return this.name; } public void setName(String name) { this.name = name; } public int getAge() { return this.age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "User{" + "id=" + id + ", name='" + name + '\'' + ", age=" + age + '}'; } }然后点击Build---》make project,则在新建的gen目录下会自动生成三个文件
4.自定义GreenDaoManager
package com.lele.hl_pc_java.greendao; import android.app.Application; import android.content.Context; import com.lele.hl_pc_java.greendao.gen.DaoMaster; import com.lele.hl_pc_java.greendao.gen.DaoSession; /** * Created by HL-PC-JAVA on 2017/3/24. */ public class GreenDaoManager { private static DaoMaster mDaoMaster; private static DaoSession mDaoSession; private static volatile GreenDaoManager mInstance=null; public static GreenDaoManager getmInstance(Context context) {//构造方法 if (mInstance == null) { DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(context, "user.db"); mDaoMaster = new DaoMaster(devOpenHelper.getWritableDb()); mDaoSession = mDaoMaster.newSession(); mInstance=new GreenDaoManager(); } return mInstance; } public DaoMaster getMaster(){ return mDaoMaster; } public DaoSession getSession(){ return mDaoSession; } public DaoSession getNewSession(){ mDaoSession=mDaoMaster.newSession(); return mDaoSession; } }5.使用greendaoManager进行数据的增删改查
package com.lele.hl_pc_java.greendao; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.TextView; import com.lele.hl_pc_java.greendao.gen.UserDao; import org.w3c.dom.Text; public class MainActivity extends AppCompatActivity { UserDao userDao; TextView showInfo; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); showInfo= (TextView) findViewById(R.id.userInfo); userDao=GreenDaoManager.getmInstance(this).getNewSession().getUserDao(); } public void add(View view){ User user=new User(1000L,"angle",20); userDao.insert(user); } public void update(View view){ User user1=new User(1000L,"angle in earth",18); userDao.update(user1); } public void delete(View view){ userDao.deleteByKey(1000L); } public void query(View view){ User user=userDao.load(1000L); if (user==null){ user=new User(); user.setName("我被删除啦!"); } showInfo.setText("当前用户的信息:"+user.toString()); } }over!