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

安卓中的数据库操作–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() {
            @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 query = new BmobQuery();
        query.getObject("a203eba875", new QueryListener() {
    
            @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
    还有一些批操作,都是类似的,有兴趣可以去上面的官方地址去看一下教程

你可能感兴趣的:(基础)