GreenDao数据库

来源:互联网 发布:淘宝高仿鞋哪些店铺 编辑:程序博客网 时间:2024/06/02 06:04

project_build.grade:

buildscript {    repositories {        jcenter()        mavenCentral() // add repository    }    dependencies {        classpath 'com.android.tools.build:gradle:2.3.3'        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    }}

model_build.grade:
apply plugin: 'org.greenrobot.greendao'
greendao {    schemaVersion 1    daoPackage 'com.anye.greendao.gen'    targetGenDir 'src/main/java'}
compile'org.greenrobot:greendao:3.0.1'compile'org.greenrobot:greendao-generator:3.0.0'
先建一个User类:
@Entity(nameInDb = "YueDb")public class User {    @Id    private Long id;    private String name;
}
然后在菜单栏build里点击make mondle "app"
MvApplication:
public class Mvapplication extends Application {    private DaoSession daoSession;    @Override    public void onCreate() {        super.onCreate();        DaoMaster.DevOpenHelper mHelper = new DaoMaster.DevOpenHelper(this, "notes-db", null);        SQLiteDatabase database = mHelper.getWritableDatabase();        DaoMaster daoMaster = new DaoMaster(database);        daoSession = daoMaster.newSession();    }    public DaoSession getDaoSession() {        return daoSession;    }}
MainActivity :
public class MainActivity extends AppCompatActivity implements View.OnClickListener {    private UserDao userDao;    private Button zeng;    private Button shan;    private Button xiu;    private Button cha;    private ListView listView;    private List<User> list;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        DaoSession daoSession = ((Mvapplication) getApplicationContext()).getDaoSession();        userDao = daoSession.getUserDao();        initView();    }    private void initView() {        zeng = (Button) findViewById(R.id.zeng);        shan = (Button) findViewById(R.id.shan);        xiu = (Button) findViewById(R.id.xiu);        cha = (Button) findViewById(R.id.cha);        listView = (ListView) findViewById(R.id.listView);        zeng.setOnClickListener(this);        shan.setOnClickListener(this);        xiu.setOnClickListener(this);        cha.setOnClickListener(this);    }    @Override    public void onClick(View v) {        switch (v.getId()) {            case R.id.zeng:                for (int i = 1; i < 10; i++) {                    User user = new User();                    user.setName("岳俊飞" + i);                    userDao.insert(user);                }                break;            case R.id.shan:                userDao.deleteByKey((long) 3);                break;            case R.id.xiu:                User user1 = new User((long) 5, "岳小蛋");                userDao.update(user1);                break;            case R.id.cha:                list = userDao.loadAll();                Mydapter mydapter = new Mydapter();                listView.setAdapter(mydapter);                break;        }    }    class Mydapter extends BaseAdapter {        @Override        public int getCount() {            return list == null ? 0 : list.size();        }        @Override        public Object getItem(int position) {            return list.get(position);        }        @Override        public long getItemId(int position) {            return position;        }        @Override        public View getView(int position, View convertView, ViewGroup parent) {            Holder holder;            if (convertView==null){                convertView=convertView.inflate(MainActivity.this,R.layout.item_main,null);                holder = new Holder();                holder.textView= (TextView) convertView.findViewById(R.id.TextView);                convertView.setTag(holder);            }else {                holder= (Holder) convertView.getTag();            }            holder.textView.setText(list.get(position).getId()+":"+list.get(position).getName());            return convertView;        }    }    static class Holder{        TextView textView;    }}
http://www.jianshu.com/p/4986100eff90