首页 > 技术知识 > 正文

一、Baas简介 Baas,Backend as a Service的简称,即“移动后端即服务”。

“移动后端即服务”是移动平台在“云”这一概念上的一个典型实践。Baas帮助我们把服务器的东西打包,做移动端的人不用再考虑如何写服务器端、如何设计数据库、搭建服务器等,它把这一切放在云端,用户只需要调用API接口,就可以实现各种功能。

Baas源于国外,在国内的发展也很迅速,除了Bmob外,还有原子云、AVOS Cloud、百度frontia、华为PowerApp等,这些平台为开发者提供一系列的云端服务,包括数据存储、消息推送、文件服务、API分析、应用统计、移动官网等,但不同的Bass提供商提供的服务的侧重点不同,今天我们来了解一下如何利用Bmob在云端搭建移动平台的服务器端。

二、Bmob简介 Bmob是国内最早做Bass的平台,它提供的服务主要包括数据服务、短信服务、即时通讯、推送功能、移动支付、云端逻辑和容器服务等。

由于时间限制,我在这里仅对Bmob平台的数据服务作一个简单的介绍和代码实践,Bmob官网为开发者提供了非常完善的文档,想了解其他功能的可以前往学习。

Bmob官网:http://www.bmob.cn/

(一)数据服务基本操作 1.创建JavaBean 首先创建一个JavaBean,用于存储用户数据,该类要继承BmobObject,这样Bmob SDK才能够识别:

public class User extends BmobObject{ //用户名 private String userName;

//密码 private String userPwd; public String getUserName() { return this.userName; } public void setUserName(String userName) { this.userName = userName; } public String getUserPwd() { return this.userPwd; } public void setUserPwd(String userPwd) { this.userPwd = userPwd; }

}

2.添加一行数据 User user = new User(); user.setUserName(“sqchen”); user.setPassword(“123”); user.save(new SaveListener() { @Override public void done(String objectId,BmobException e) { if(e==null){ Toast.makeText(context, “数据添加成功!”, Toast.LENGTH_SHORT).show(); }else{ Toast.makeText(context, “数据添加失败!”, Toast.LENGTH_SHORT).show(); } } });

当服务器端不存在User表时,系统会根据你的User.class自动帮你创建表,表名和类名一致,除了User.class自身拥有的字段外,还会增加objectId(数据编号)、createdAt、updateAt、ACL字段。如果服务器端已经存在User表和相应的字段,那么我们添加的数据和数据类型也要和服务器端的表一致,以下增删改查操作同上。

当返回的BmobException对象为null时,说明操作成功,否则失败。

3.获取一行数据 BmobQuery userQuery = new BmobQuery(); //增加查询条件 userQuery.addWhereEqualTo(“userName”,”sqchen”); userQuery.findObjects(new FindListener() { @Override public void done(List list, BmobException e) { if(e == null) { Toast.makeText(context, “数据获取成功!”, Toast.LENGTH_SHORT).show(); }else{ Toast.makeText(context, “数据获取成功!”, Toast.LENGTH_SHORT).show(); } } });

4.修改一行数据 User user = new User(); user.setUserPassword(“456”); user.update(“objectId”,new UpdateListener() { @Override public void done(BmobException e) { if(e == null) { Toast.makeText(context, “数据修改成功!”, Toast.LENGTH_SHORT).show(); } else { Toast.makeText(context, “数据修改失败!”, Toast.LENGTH_SHORT).show();

} } });

帅气的人会发现,上面获取数据时可以指定查询条件进行数据的增加操作,即”addWhereEqualTo()”方法,而对于数据的修改和删除操作,目前Bmob SDK只支持通过objectId(数据编号,)进行更新和删除(当然,获取操作也支持根据objectId进行数据的获取)。

自V3.4.4版本开始,SDK提供了setValue(key,value)方法,用于数据的更新。如:

User user = new User(); user.setValue(“userPwd”,”456″); 1 2 5.删除一行数据 User user = new User(); user.setObjectId(“objectId”); user.delete(new UpdateListener() { @Override public void done(BmobException e) { if(e == null) { Toast.makeText(context, “数据删除成功!”, Toast.LENGTH_SHORT).show(); } else { Toast.makeText(context, “数据删除失败!”, Toast.LENGTH_SHORT).show(); } } });

以上,就是Bmob数据服务的基本操作。下面就来练习一下吧。

(二)数据服务的实践 1.注册账号 Bmob后端云初体验

2.创建应用 Bmob后端云初体验1

3.获取密钥 Bmob后端云初体验2

4.导入SDK 在工程的build.gradle中添加,如图:

repositories { jcenter() } dependencies { classpath com.android.tools.build:gradle:1.2.3 }

repositories { jcenter() //Bmob的maven仓库地址–必填 maven { url “https://raw.github.com/bmob/bmob-android-sdk/master” } }

Bmob后端云初体验3

再在项目的build.gradle中添加,如图:

compile cn.bmob.android:bmob-sdk:3.5.0

1 Bmob后端云初体验4 5.配置AndroidManifest.xml 添加下列权限:

猜你喜欢