运行ObjectBox查询时,结果是随机字符串而不是值

时间:2018-03-24 20:34:47

标签: java objectbox

我已经搜索了端到端的文档并尝试了很多东西,但到目前为止还没有。

问题是,在我成功构建了一个具有工作查询系统(SearchContentActivity.java)及其支持类(UserContent.java, UserContentAdapter.java, UserContentBoxapp.java)的类之后,我必须为一对多关系构建一个新的数据库。内容(CategoryNameSet.java,只有一个属性"String categoryName")。

大多数代码看起来像另一个查询:

public class TestActivity extends AppCompatActivity {

    private TextView textView;
    private BoxStore store;
    Box<CategoryNameSet> categoryNameSetBox;
    List<CategoryNameSet> categoryNameSetList;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_test);

    textView = (TextView) findViewById(R.id.activity_test_textView);
    store = ((UserContentBoxApp) getApplication()).getBoxStore();

    categoryNameSetBox = store.boxFor(CategoryNameSet.class);
    categoryAdd();
}

private void categoryAdd() {
categoryNameSetList = categoryNameSetBox.query().contains(CategoryNameSet_.categoryName, "yahoo").build().find();

String text = "categoryNameSet instances: " + categoryNameSetBox.count()
        + ". Name of instances: " + categoryNameSetList;


    textView.setText(text);}
}

当我运行代码时,它显示完整的包名,类名和@random字符串

示例

  

categoryNameSet实例:155。实例名称:   [com.google.test.myapp.CategoryNameSet@ccd488d,com.google.test.myapp.CategoryNameSet@9910a42]

结果的数量是两个,这是放置的次数&#34; yahoo&#34;到另一个类的categoryNameSetBox。这表明查询可以搜索并且&#34;查看&#34;结果。

如何将这些随机字符串的结果更改为CategoryNameSet.java中包含的categoryName属性?

1 个答案:

答案 0 :(得分:1)

我认为你正在寻找property queries,它不会返回一个对象,而只返回每个对象的一个​​属性。