【问题标题】:ORMLite query foreign collectionORMLite 查询国外集合
【发布时间】:2014-02-21 10:10:32
【问题描述】:

我搜索了很多,但我不明白如何解决我的问题。我有两个这样的课程:

public class A
{
    @DatabaseField(generatedId = true)
    int mId;

    @DatabaseField(canBeNull = false)
    private String mName;

    @ForeignCollectionField(eager = true)
    private Collection<B> mB;
}

public class B
{
    @DatabaseField(canBeNull = false)
    private String mIng;

    @DatabaseField(foreign = true)
    private A mA;
}

我的目的是用对象 B 的集合填充对象 A。 我能怎么做?我已经在一个管理数据库的类中有两个 DAO 对象。

【问题讨论】:

    标签: java android ormlite


    【解决方案1】:

    你可以这样继续:

    1) 使用A的dao创建A

    2) 使用A 创建B

    代码:

    A a = new A(mid , mName);
    
    daoA.create(a); 
    
    for (B b : a.mB) {
    
       b = new B( mIng , a);
       daoB.create(b);
    }
    

    希望这是有用的...谢谢

    【讨论】:

    • 这是正确的答案。完美配合 1 次调整:a.mB NOT a.MA。
    【解决方案2】:

    B 类需要 A 类型的属性才能拥有父键。

    完成后,我编写代码,最简单的方法是保存 A 的实例并再次选择它,以便 ORMLite 初始化foreignCollection。然后只需调用 add(new B()) 就可以保存 B 的新子行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多