----//查询自定义表名数据的方式
----//登录
//其中MyUser 继承 BmobUser,MyUser中包含了除默认字段之外的自定义字段。
----//注册
----//提交数据
BmobQuery query =new BmobQuery("自定义表名");
query.setLimit("查询数量");
//按收藏时间排序
query.order("排序方式");
query.findObjectsByTable(new QueryListener<JSONArray>() {
@Override
public void done(JSONArray jsonArray, BmobException e) {
if ( e == null){
int length = jsonArray.length();
LogUtil.i(TAG, "User Search Result : " + length);
LogUtil.i(TAG, "JsonArray : " + jsonArray.toString());
for (int i = 0; i < length; i ++){
try {
JSONObject obj = jsonArray.getJSONObject(i);
Log.i(TAG, "obj : " + obj.toString());
if (obj.has("***"))
userPic = obj.getString("***");
//... ...
} catch (JSONException e1) {
e1.printStackTrace();
}
}
} else {
LogUtil.i(TAG,"Bmob 查询数据:"+e.getMessage()+","+e.getErrorCode());
}
}
});
----//登录
MyUser myUser = new MyUser();
myUser.setPassword(my_password);
myUser.setEmail(my_account);
LogUtil.i(TAG, "Password : " + my_password + "Account : " + my_account);
myUser.login(new SaveListener<MyUser>() {
@Override
public void done(MyUser bmobUser, BmobException e) {
if ( e == null){
//LogUtil.i("User", "BmobUser : " + bmobUser.toString());
//LoginActivity.flag = true;
String userid = bmobUser.getObjectId();
String userName = bmobUser.getUsername();
LogUtil.d( TAG, "登录成功!" + "\n用户名 :" + userName+" 用户Id :" + userid);
MainActivity.startActivity(context);
finish();
//必须结束该活动,不然返回会退回到登录界面
} else {
LogUtil.e(TAG, "登录失败! Error : " + e.getMessage() + ", " + e.getErrorCode());
}
}
});
//其中MyUser 继承 BmobUser,MyUser中包含了除默认字段之外的自定义字段。
----//注册
MyUser bmobUser = new MyUser();
bmobUser.setUsername(account);
bmobUser.setPassword(password);
//还可以设置自定义在MyUser之中的数据
bmobUser.signUp(new SaveListener<BmobUser>() {
@Override
public void done(BmobUser bmobUser, BmobException e) {
if ( e == null ){
ShowInfor.show("注册成功!", ShowInfor.SHORT_TIME);
LogUtil.d( TAG, "注册成功!");
//结束注册 返回主界面 返回账号密码字段
setResult(SIGN_UP_ACTIVITY, new Intent().putExtra(ACOUNT, account).putExtra(PASSWORD,password));
finish();
} else {
ShowInfor.show("注册失败!");
LogUtil.d(TAG, "注册失败!"+e.getMessage()+"," + e.getErrorCode());
}
}
});
----//提交数据
FavouriteNew favouriteNew = new FavouriteNew(table_name);
favouriteNew.setNewId(id);
favouriteNew.setNewSource("");
//表中定义的字段,其中Favourite对应的字段名字必须和Bmob表中定义的名字相同
favouriteNew.save(new SaveListener<String>() {
@Override
public void done(String objectId, BmobException e) {
if(e == null){
Log.e(TAG,"Bomb添加数据成功,返回objectId为:"+ objectId + "数据来源 :" + finalSource);
//可以保存相应的ObjectId用来对数据进行更新操作
}else{
Log.e(TAG, "Bomb创建数据失败:" + e.getMessage());
}
}
});
----//查询某一条数据,根据某一条数据对应的ID进行查询
BmobQuery queryUserPic = new BmobQuery(TableName); queryUserPic.getObject(objId, new QueryListener<MyUser>() { @Override public void done(MyUser myUser, BmobException e) { if ( e == null ){ //获得信息 } else { //默认 LogUtil.e(TAG, "默认没有图片"); LogUtil.e(TAG, "ERROR :" + e.getMessage()+", "+e.getErrorCode()); } } });
//这里是在用户表中查询某一位用户的数据,MyUser是自定义的用户表。
----//更新数据
MyUser user = new MyUser(User_TABLE); user.setShareNum(sNum); //把需要更新的字段设置后即可 user.update(obj, new UpdateListener() { @Override public void done(BmobException e) { if ( e == null){ LogUtil.i(TAG, "Success UpDate information for User!"); } else { LogUtil.e(TAG, "Failure to Updata information"); } } });
//这里是更新用户表中的分享数量