关于Bmob的后端云的使用---傻瓜式数据库操作

来源:互联网 发布:国产垃圾 知乎 编辑:程序博客网 时间:2024/06/08 09:35

安卓中的数据库操作–SQLiteOpenHelper

  • 我们都知道在APP开发的时候会对数据库操作,不可避免的要去使用我们的数据库三件套,什么Helper,什么DBmanager,什么Dao呀,总之就是对数据库的操作要分三层,一层一层的调用
  • 在Helper层,我们要创建数据库—-一大堆大码,还不能写错,稍有不慎就把数据库的表名写错了
  • DBmanger层,我们要进行数据库操作了—一大堆代码,replace,update等等繁杂的操作
  • Dao层就是专门调用DBmanager层的,这一层还算是简单吧
  • 说了这么一大堆就是为了引出下面傻瓜式的操作—-Bmob后端云

Bmob后端云的使用

  • 很简单的,第一步当然是添加依赖了,现在推荐的也是添加依赖的方式(官方也是这么说的),参考官方提示就行了http://docs.bmob.cn/data/Android/a_faststart/doc/index.html
  • 好了 添加依赖就是准备工作,做完以后就可以愉快的写代码了

代码的编写

写在前面
Bmob把创建数据库和对数据库的操作进行了封装,更偏向与面向对象编码的方式,很方便,也很容易理解
要注意的主要有两点
1 你要创建的表对应的是你的一个类,当然表是存在于云端的。例如你要创建一个学生表 ,表名是StudentTable,字段有age-int,name-String,isMarry–boolean,对应的Bmob编码方式(暂且这么叫吧)是一个类名是StudentTable的类,这个类一定要继承他官方类BmobObject,字段呢当然是我们熟悉的属性了。
2当我们写属性的时候要注意变量的类型必须都是包装类型,就是说上面age–Integer不在是int类型,为什么这样子我也不是很清楚,没有具体去查,想了解的兄弟可以自己去查,然后可以跟我说一下,相互促进,嘿嘿。

  • 好了准备知识就这么多了,总得就是一个表对应一个Java中的一个类,字段对应类的属性,类的属性必须用包装类
  • 接下来就是数据库的操作了增删改查。
 Student p2 = new Student();        p2.setName("xiaoming");        p2.setAddress("北京海淀");        p2.setAge(23);        p2.setMarry(false);        p2.save(new SaveListener<String>() {            @Override            public void done(String objectId, BmobException e) {                if (e == null) {                    Toast.makeText(MainActivity.this, "添加数据成功,返回objectId为:" + objectId, Toast.LENGTH_SHORT).show();                } else {                    Toast.makeText(MainActivity.this, "创建数据失败:" + e.getMessage(), Toast.LENGTH_SHORT).show();                }            }        });    }
   final Student p2 = new Student();        p2.setObjectId("6b6c11c537");        p2.delete(new UpdateListener() {            @Override            public void done(BmobException e) {                if(e==null){                    Toast.makeText(MainActivity.this, "删除成功:"+p2.getUpdatedAt(), Toast.LENGTH_SHORT).show();                }else{                    Toast.makeText(MainActivity.this, "删除失败:" + e.getMessage(), Toast.LENGTH_SHORT).show();                }            }        });
  final Student p2 = new Student();        p2.setAddress("北京朝阳");        p2.update("6b6c11c537", new UpdateListener() {            @Override            public void done(BmobException e) {                if(e==null){                    Toast.makeText(MainActivity.this, "更新成功:"+p2.getUpdatedAt(), Toast.LENGTH_SHORT).show();                }else{                    Toast.makeText(MainActivity.this, "更新失败:" + e.getMessage(), Toast.LENGTH_SHORT).show();                }            }        });
  • BmobQuery<Student> query = new BmobQuery<Student>();    query.getObject("a203eba875", new QueryListener<Student>() {        @Override        public void done(Student object, BmobException e) {            if(e==null){                //获得Name的信息                object.getName();                //获得数据的objectId信息                object.getObjectId();                //获得createdAt数据创建时间(注意是:createdAt,不是createAt)                object.getCreatedAt();            }else{                Log.i("bmob","失败:"+e.getMessage()+","+e.getErrorCode());            }        }    });

    github地址:https://github.com/xiaolvzi/BmobText.git
    还有一些批操作,都是类似的,有兴趣可以去上面的官方地址去看一下教程

0 0
原创粉丝点击