这是数据库表
@DatabaseTable(tableName = "Menus")
public class Menus {
@DatabaseField(columnName = "menuId", id = true)
private String id;
@ForeignCollectionField(eager = true)
private ForeignCollection<Test> test;}
这是外国收藏品
@DatabaseTable(tableName = "Test")
public class Test {
@DatabaseField(foreign = true, foreignAutoCreate = true, foreignAutoRefresh = true)
private Menus menu;
@DatabaseField(columnName = "id", id = true)
private String id;
@DatabaseField(columnName = "name")
private String name;}
我查询了
ArrayList<Menus> courseList = null;
try {
courseList = (ArrayList<Menus>) menuDao.queryForAll();
} catch (SQLException e) {
e.printStackTrace();
}
我得到的每个术语除了返回null的foreignCollection。
有人有解决方案吗?
答案 0 :(得分:0)
我知道你将foreignAutoRefresh设置为true,但是你试过调用
menuDao.refresh(test.getMenu());
? 我在foreignAutoRefresh以及ForeignCollectionFields的&#34; eager&#34;中遇到了一些问题但是如果你手动刷新它会每次都有效。