greendao操作数据库的使用方法

第一步把greendao-1.3.0-beta-1,greendao-generator-1.3.1两个jar包加载到工程的lib的文件夹中,一定要右键点击Add As Library后才能使用。

第二步新建一个Java Library Module

第三步:

在此文件中加上compile 'de.greenrobot:greendao-generator:1.3.1',然后点击右上角的Sync Now

第四步在新建的Java Library Module中的Java类中写上数据库表的字段名及属性,代码如下:

 1 public class MyClass {
 2     public static void main(String[] args){
 3         //创建集合(name)
 4         Schema schema = new Schema(1,"xxxxxx");  
 5         //创建表
 6         Entity dishesTable = schema.addEntity("Dish");
 7         //dishesTable.addIdProperty().primaryKey().autoincrement();
 8         dishesTable.addLongProperty("dishID").primaryKey();
 9         dishesTable.addStringProperty("dishName");
10         dishesTable.addIntProperty("dishState");14 
15         Entity Table = schema.addEntity("Tableinfo");
16         Table.addStringProperty("tableID");
17         Table.addIntProperty("peopleNum");
18         Table.addIntProperty("tableState");
19
22         //使用引擎生成dao代码
23         //使用全路径
24         try {
25             new DaoGenerator().generateAll(schema,"xxxxxxxx");
26         }catch (Exception e){
27             e.printStackTrace();
28         }
29     }
30 }

代码中的第六行和第十五行的“Dish”和“Tableinfo”是两个文件名,第四行第二个参数是“Dish”和“Tableinfo”文件的完整包名,用"ssss"表示,第25行的第二个参数是"ssss"在Project格式下的路径,例如:"../MenuDemo/app/src/main/java"。

第五步右键运行第四步写的Java文件。

生成如下文件即可!!!

 第六步在程序的入口处即Application(自己建一个Java类继承application,名字为MainApp)中写如下代码:

1 // 获取数据实例,创建数据库
2         SQLiteDatabase db = new DaoMaster.DevOpenHelper(getBaseContext(), "hall.db", null).getWritableDatabase();
3 
4         // 管理对象
5         DaoMaster master = new DaoMaster(db);
6         DaoSession session = master.newSession();
7         _dishDao = session.getDishDao();
8         _tableinfoDao = session.getTableinfoDao();

第2行的第二个参数是数据库的名字!!!

第七步在AndroidManifests文件中加上android:name=".MainApp"

完成以上七步就把greendao操作数据库的准备工作做好啦!!!!接下来就可以操作数据库啦!!!!

第八步在某个活动(Activity)中加上MainApp app = (MainApp) getApplication();切记!!!!不然就会出现如下错误

第九步写下如下代码

1         Dish dish =new Dish();
2         dish.setDishID((long) 102);
3         dish.setDishState(1);
4         dish.setDishName("大卡");
5         app.get_dishDao().insert(dish);
6         Log.i(TAG, "onCreate: "+"插入成功!!!");
7         List<Dish> dishes=app.get_dishDao().loadAll();
8         Dish dishe=dishes.get(0);
9         Log.i(TAG, "onCreate: "+dishe.toString());

第十步查看结果

控制台打印的结果:

SQLite数据库的结果:

讲到这里就完啦,聪明的你学会的吗,举一反三试试!!!

转载于:https://www.cnblogs.com/evolutionoflicorice/p/6210353.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值