2013-04-11 63 views
2

我有addFilter濾波後的實體問題()已經附加篩選查詢在谷歌應用程序引擎

從谷歌應用程序引擎過時。

目的:要列出有UID = 「拉胡」

什麼,我想這些實體:

com.google.appengine.api.datastore.DatastoreService ds=DatastoreServiceFactory.getDatastoreService(); 

    Query q = new Query("Upload"); 
    q.setFilter(FilterOperator.EQUAL.of("UID","rahul")); 
    PreparedQuery pq = ds.prepare(q); 

    for (Entity result : pq.asIterable()) 

     { 
      String title = (String) result.getProperty("url"); 
      resp.getWriter().println(title); 
     } 

,這是我的DataStore實例爲 「上傳」 實體:

Upload Entity Instance in Datastore

但是,啓動應用程序時我收到一個空白頁。

+1

@frank是JAVA不是一個標籤,但有明顯的區別。這個Google app引擎問題是基於JAVA版本的。不是Python。 – 2013-04-11 07:22:27

+0

是解決了嗎? – 2013-07-02 19:00:48

+0

是的..有一個數據存儲錯誤的名稱。 – 2013-07-03 18:33:58

回答

0

它應該給出所需的輸出。如果它提供空白頁面,請檢查Google Dashboard或共享日誌中的日誌。

2

由於addFilter()已被棄用,你也可以使用下面的代碼:

要創建一個過濾器:

query.setFilter(new Query.FilterPredicate("UID", FilterOperator.EQUAL, "rahul")); 

要創建多個過濾器:

後您建立所有您的過濾器,使用CompositeFilter將它們組合在一起:

new CompositeFilter(CompositeFilterOperator.AND, Arrays.asList(filter1, filter2)); 

然後將其設置爲過濾器查詢通過寫:

query.setFilter(composite_filter);