关闭

Bmob数据库查询结果为null

1308人阅读 评论(2) 收藏 举报
分类:

在用Bmob读取数据时,使用条件查询。获取到结果后可以打印objectid,但是获取里面的值为null。一遍遍的看官方文档,终于发现了问题。出现问题的环境:

public class QuestionTable extends BmobObject {
    private String mquestion;
    private String mresult;
    private long ID;

    public String getmQuestion(){
        return mquestion;
    }

    public void setmQuestion(String mquestion){
        this.mquestion=mquestion;
    }

    public String getmResult(){
        return mresult;
    }

    public void setmResult(String mresult){
        this.mresult=mresult;
    }

    public long getID(){
        return ID;
    }
}

数据库截图
这里写图片描述

查询语句(关键代码)

                BmobQuery<QuestionTable> query = new BmobQuery<QuestionTable>();
                query.addWhereEqualTo("ID", 4);
                query.setLimit(20);
                query.findObjects(new FindListener<QuestionTable>() {
                    @Override
                    public void done(List<QuestionTable> list, BmobException e) {
                        if (e == null) {
                            for (QuestionTable q : list) {
                                Log.i("TAG", "q.getObjectId()" + q.getObjectId());
                                Log.i("TAG", "q.getmQuestion()" + q.getmQuestion());
                            }
                        } else {
                            Log.i("bmob", "失败:" + e.getMessage() + "," + e.getErrorCode());
                        }
                    }
                });

问题就出现在javabean类中,虽然类名与数据表明相同,但是变量名与数据库列名不同,所以就出现了能够获取到objectid,但是无法获取记录。

解决方法:修改数据库列名或者javabean类中的变量中,保持一致即可。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:107719次
    • 积分:1949
    • 等级:
    • 排名:千里之外
    • 原创:89篇
    • 转载:2篇
    • 译文:0篇
    • 评论:22条
    博客专栏
    最新评论