如何使用Google App Engine中的特定关键字获取结果在Java中使用NO-SQL数据存储区查询?
我们使用GoogleInfo表,在该表中,我们存储了应用程序的范围。例如“https://www.googleapis.com/auth/drive.appdata,https://www.googleapis.com/auth/drive.file” ,并且我试图根据某个关键字(例如范围内的“drive”)获取结果,并根据该关键字获得结果。以下是我的代码。请建议。如何使用Google App Engine中的特定关键字获取结果在Java中使用NO-SQL数据存储区查询?
String keywords[] = {"admin","drive","gmail","userinfo"}; Query query = pm.newQuery("SELECT scopes FROM com.cloudcodes.gcontrol.dataaccesslayer.insights.google.drive.GoogleInfo where :p.contains(scopes)");
result = (List) query.execute(Arrays.asList(keywords));
List tempResult = new ArrayList();
tempResult.addAll(result);
return tempResult;
回答:
似乎你正在使用JDO [1]和PersistanceManager [2]。
就我所见,您尝试执行的查询可能是错误的。检查如何使用JDO执行查询[3]。
您所查询的是:
String keywords[] = {"admin","drive","gmail","userinfo"}; Query query = pm.newQuery("SELECT scopes FROM com.cloudcodes.gcontrol.dataaccesslayer.insights.google.drive.GoogleInfo where :p.contains(scopes)");
result = (List) query.execute(Arrays.asList(keywords));
看起来你想要做的事,如:
//Query for all persons with lastName equal to Smith or Jones Query q = pm.newQuery(Person.class, ":p.contains(lastName)");
q.execute(Arrays.asList("Smith", "Jones"));
Person.class is the kind
Arrays.asList("Smith", "Jones")
此参数 “:p.contains(lastName的)” 定义lastName的是我们想要的属性检查。 您正在将该类设置为com.cloudcodes.gcontrol.dataaccesslayer.insights.google.drive.GoogleInfo,我想这是完整的Java名称包,其中的类习惯是类名,而类名是GoogleInfo。所以你可以尝试:
Query q = pm.newQuery(GoogleInfo.class, ":p.contains(scopes)"); q.execute(Arrays.asList("admin","drive","gmail","userinfo"));
你想检索范围。我假设你想使用REST API。所以在里面:p.contains(“scopes”)可能会去与您想要检索的实体中的keyWords相关的另一个属性,也许是数组属性?
在这里,我与大家分享一些可能有用的文档[4] [5]。
希望这会有所帮助!
[1] https://cloud.google.com/appengine/docs/standard/java/datastore/jdo/overview-dn2
[2] http://massapi.com/method/javax/jdo/PersistenceManager.newQuery-4.html
[3] https://cloud.google.com/appengine/docs/standard/java/datastore/jdo/queries
[4] https://cloud.google.com/datastore/docs/concepts/overview#comparison_with_traditional_databases
[5] https://cloud.google.com/datastore/docs/reference/gql_reference
以上是 如何使用Google App Engine中的特定关键字获取结果在Java中使用NO-SQL数据存储区查询? 的全部内容, 来源链接: utcz.com/qa/262292.html