1
它不仅仅是插入,真的。如果我已经有一个部分加载的DAO,我怎样才能加载其余的呢?使用插入发布DBQuery后,如何获取生成的ID,以便将其添加回DAO?
我要做的是做一个选择查询,然后使用BeanCopy。我宁愿让结果集映射器直接在DAO上设置属性。
它不仅仅是插入,真的。如果我已经有一个部分加载的DAO,我怎样才能加载其余的呢?使用插入发布DBQuery后,如何获取生成的ID,以便将其添加回DAO?
我要做的是做一个选择查询,然后使用BeanCopy。我宁愿让结果集映射器直接在DAO上设置属性。
好吧,让我试着回答这个问题。对于所有生成的值(如自动生成的ID),您可以使用以下流程:
q = DbEntitySql.insert(foo).query();
// ... or any other way to get DbQuery
q.setGeneratedColumns("ID");
q.executeUpdate();
DbOomUtil.populateGeneratedKeys(dao, q);
基本上,每个查询/ DAO您需要来指定自动生成的字段。目前没有这样做的注释 - 我们试图尽可能减少注释的数量。我们正在努力使其更加自动化。
现在,填充DAO。我不会使用BeanCopy
- 只需加载新的DAO实例并丢弃旧的实例。因此,在执行完整选择查询后,您将获得完整的DAO加载,并继续。