第一步
App 类里面
public class App extends Application { static App app; private DaoSession daoSession; @Override public void onCreate() { super.onCreate(); app=this; getMyDaoSessage(); } public static App getApp(){ return app; } public void getMyDaoSessage() { DaoMaster.DevOpenHelper yiKu = new DaoMaster.DevOpenHelper(this, "sssssss"); SQLiteDatabase db = yiKu.getWritableDatabase(); DaoMaster daoMaster = new DaoMaster(db); daoSession = daoMaster.newSession(); } public DaoSession getDaoSession(){ return daoSession; } }
第二步
数据库的添加
1.在Manactivty中直接跳转就ok
Intent intent = new Intent(MainActivity.this, AddActivity.class); startActivity(intent);
2. 在AddActivity中
@Override public void onClick(View v) { switch (v.getId()) { case R.id.bt_comit: BeanADao beanADao = App.getApp().getDaoSession().getBeanADao(); //2.new 一个数据库对象 BeanA beanA = new BeanA(); //3. beanA.setText(ed_text.getText().toString()); beanA.setName(ed_name.getText().toString()); beanADao.insert(beanA); finish(); break; }
数据库的查询
List<BeanA> beanAs = App.getApp().getDaoSession().getBeanADao().loadAll(); adapter = new RecyAdapter(MainActivity.this,beanAs); LinearLayoutManager manager = new LinearLayoutManager(MainActivity.this); manager.setOrientation(LinearLayoutManager.VERTICAL); recy.setLayoutManager(manager); recy.setAdapter(adapter);
数据库的删除
bt_delete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { List<BeanA> beanAs = App.getApp().getDaoSession().getBeanADao().loadAll(); Long id = beanAs.get(position).getId(); App.getApp().getDaoSession().getBeanADao().deleteByKey(id); query(); } });
数据库的修改
1.第一步在MainActivty中
update.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { List<BeanA> beanAs1 = App.getApp().getDaoSession().getBeanADao().loadAll(); Intent intent = new Intent(MainActivity.this, UpdataActivity.class); intent.putExtra("Id",beanAs1.get(position).getId()); intent.putExtra("text",beanAs1.get(position).getText()); intent.putExtra("name",beanAs1.get(position).getName()); startActivity(intent); } });
2.第二步在修改Activity中 写一个方法先接受值
Intent intent = getIntent(); id = intent.getLongExtra("Id", -1); text = intent.getStringExtra("text"); String name = intent.getStringExtra("name"); ed2_text.setText(text); ed2_name.setText(name);
3.在提交按钮中
switch (v.getId()) { case R.id.bt2_comit: BeanA beanA = new BeanA(); beanA.setImage_("http://p2.so.qhimgs1.com/t016c021483304f34be.jpg"); beanA.setText(ed2_text.getText().toString()); beanA.setName(ed2_name.getText().toString()); beanA.setId(id); App.getApp().getDaoSession().getBeanADao().update(beanA); finish(); break; }