如何使用密钥获取数据存储区中的数据

时间:2014-08-02 05:49:38

标签: google-app-engine google-cloud-datastore

从数据存储区中获取数据时遇到问题。我有实体的密钥,但使用该密钥我能够获取ID,种类名称,但不是属性

这是我试过的代码。

        for(int j=0;j<mem.size();j++) 
        {
            Key key=mem.get(j);
            Entity con=new Entity(key);

            System.out.println("Kind Name = "+con.getKind() );

            System.out.println("Key = "+con.getKey() );
            System.out.println("ID = "+con.getKey().getId() );
            System.out.println("first name="+con.getProperty("FirstName") );
        }

getproperty()方法无法获取数据

提前感谢。

1 个答案:

答案 0 :(得分:2)

使用给定密钥构造新的Entity不会从数据存储区中获取实体,它会在内存中使用相同的密钥创建新实体。要获取实体,您必须致电datastore.get(key)(其中datastore是您使用DatastoreService创建的DatastoreServiceFactory.getDatastoreService())。