City类
public class City extends BmobObject {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Person类
public class Person extends BmobObject {
private String name;
private String address;
private List<String> myArray;
private int num;
private City city;
public City getCity() {
return city;
}
public void setCity(City city) {
this.city = city;
}
public void setMyArray(List<String> myArray) {
this.myArray = myArray;
}
public List<String> getMyArray() {
return myArray;
}
public void addArray(List<String> myArray) {
this.myArray=myArray;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", address='" + address + '\'' +
", myArray=" + myArray +
", num=" + num +
", city=" + city +
'}';
}
}
数据关联详解之添加一对一关联
添加关联
Person person=new Person();
person.setNum(33);
person.setName("name33");
City city=new City();
city.setObjectId("VJXL888K");
person.setCity(city);
person.save(new SaveListener<String>() {
@Override
public void done(String s, BmobException e) {
if(e==null){
Toast.makeText(MainActivity.this, "sucess", Toast.LENGTH_SHORT).show();
}
}
});
加include可以将关联的内容全部返回过来,不加结果只会含有关联的objectId
BmobQuery bmobQuery=new BmobQuery();
bmobQuery.include("city");
bmobQuery.getObject("c4feca3179", new QueryListener<Person>() {
@Override
public void done(Person person, BmobException e) {
tv.setText(person.toString());
}
});
数据关联详解之查询一对多关联
BmobQuery<Person> bmobQuery=new BmobQuery<>();
bmobQuery.include("city");
City city=new City();
city.setObjectId("kpDB1113");
bmobQuery.addWhereEqualTo("city",city);
bmobQuery.findObjects(new FindListener<Person>() {
@Override
public void done(List<Person> list, BmobException e) {
if(e==null){
tv.setText(list.toString());
}
}
});
数据关联详解之添加多对多关联
City city=new City("kpDB1113");
BmobRelation bmobRelation=new BmobRelation();
bmobRelation.add(new Person("de0e654bfb"));
bmobRelation.add(new Person("c90fdc2075"));
city.setBmobRelation(bmobRelation);
city.update(new UpdateListener() {
@Override
public void done(BmobException e) {
if(e==null){
Toast.makeText(MainActivity.this, "sucess", Toast.LENGTH_SHORT).show();
}
}
});
数据关联详解之查询多对多关联
BmobQuery<Person> query=new BmobQuery<>();
City city=new City("kpDB1113");
query.addWhereRelatedTo("bmobRelation",new BmobPointer(city));
query.findObjects(new FindListener<Person>() {
@Override
public void done(List<Person> list, BmobException e) {
if(e==null){
tv.setText("sucess");
}else{
tv.setText("fail");
}
}
});
数据关联详解之内部查询
BmobQuery<Person> bmobQuery=new BmobQuery<>();
BmobQuery inner=new BmobQuery();
inner.addWhereEqualTo("cityName","北京");
bmobQuery.addWhereMatchesQuery("city","City",inner);
bmobQuery.findObjects(new FindListener<Person>() {
@Override
public void done(List<Person> list, BmobException e) {
if(e==null){
tv.setText(list.toString());
}else{
tv.setText("fail");
}
}
});