Android开发,GreenDao的简单使用
Android开发,GreenDao的简单使用,个人学习记录,错误很多,不供参考
绿刀(自己编)数据库开源框架使用方法:
1.在项目的app,单击右键选择Open Moudle Setting, 找到 app, 右方选择 Dependences依赖,选择”+”添加,输入greendao, 回车(需要网络),然后选择你想要版本. 我选的是“de.greenrobot:greendao:2.1.0”
**2.在项目名上,单击右键选择 new --> Moudle. 选择 java Moudle,名字自取(greendao_generator) 然后添加依赖如1,不过是给新建的Moudle添加依赖, 添加 “de.greenrobot:gerenator 2.1.0”(generator)
3.在新建立的greendao_generator中,找到myclass:
开始编写myclass, 这里是建立了两个关联的表,但demo只有单表演示,这两个表与例子无关
正文: 在这个例子里,我只是简单的将一个登录的账号,密码存储在本地 数据库Sqlite中
只需要两个edittext, 一个按钮。
开始编写myclass:
运行myclass,然后会在指定包中生成4个类文件,DaoMaster(用于数据库操作),DaoSession(用于操作表实体Entity), User(表),UserDao(用于表的增删改查)。
1.在Activity中,声明DaoMaster,DaoSession,UserDao,数据库;
2.建立打开数据库方法,OpenSQLliteDatabase,
使用 DaoMaster.DevOpenHelper(c1,c2,null).WritableDatabase()建立数据库,第一个参数是 context:Activity.this,第二个参数是数据库名 XXX.db
DaoMaster绑定数据库,DaoSession绑定DaoMaster, 以及 userDao实例化
3.建立表添加元素成员的方法 addUser,
实例化一个用户,设置用户名,密码,使用userDao将用户插入进数据库
4.建立查询表的方法,可以建立在按钮点击事件内,
首先,用 list 接收从userDao.queryBuilder().list();
List user_list = userDao.queryBuilder().list();
然后采用迭代器Iterator进行访问
为了更清楚的查看数据库数据,添加一个 listview,以下内容是关于listview相关知识:
(1)声明listview和adapter适配器(用于添加User元素显示出来)
(2)实例化 array_adapter,并指明adapter的列表格式(list_cell.xml在layout中建立一个)
List_cell.xml:
(3)迭代器Iterator进行访问
我们希望每次点击查询按钮,adapter的内容会先清空(clear()),再添加元素,不然就会出现,内容叠加的问题,
点击listview的元素项,产生相应的结果,
在setOnItemClickListener内,
当点击listview中的元素时,我们希望用Toast提示出所有的信息,但Toast默认是在下方,我们希望修改显示位置,
(一)
(二)
5.删除 数据库中的元素, 在删除之前,插入一个adapter的删除方法,adapter的元素删除并不影响数据的元素,adapter相当于是个视图。
adapter删除方法:
String delete_number = deletenumber_edit.getText().toString();
将其转化为数字
Int change_number = integer.parsInt(delete_number);
adapter.remove(adapter.getItem(change_number));
表中元素删除方法:
本文纯属个人学习记录,错误很多,不推荐观看。