为什么Cloud Endpoints包含这样生成的方法?

时间:2013-11-09 22:54:16

标签: java google-app-engine google-cloud-endpoints

生成新的云端点库时,contains方法始终如下所示:

private boolean containsObject(Object object) {
    PersistenceManager mgr = getPersistenceManager();
    boolean contains = true;
    try {
        mgr.getObjectById(Object.class, object.getId());
    } catch (javax.jdo.JDOObjectNotFoundException ex) {
        contains = false;
    } finally {
        mgr.close();
    }
    return contains;
}

乍一看这看起来是一个很好的方法,但考虑到默认的insert方法用contains进行检查,插入的整个点是你还没有id。因此,默认情况下,插入始终失败。

我通过在contains方法中检查null id然后如果id为null则返回false来解决这个问题。但我想我错过了一些东西,有人可以请教我这个吗?谢谢!

0 个答案:

没有答案