我正在將一個簡單的Java應用程序部署到Google App Engine。使用Key.Id查詢Google App Engine數據存儲
我有一個簡單的JPA實體包含一個密鑰作爲我生成的ID。
import javax.persistence.*;
@Entity
public class MyEntity
{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private com.google.appengine.api.datastore.Key key;
...
一旦我堅持這個對象。我可以像這樣查看密鑰的ID ...
long id = entity.getKey().getId();
你知道我該如何使用相同的ID來獲取我的實體嗎?像這樣的東西...
Query query = em.createQuery("SELECT e FROM MyEntity e WHERE e.key.id = :myId");
query.setParameter("myId", id);
上述不起作用。我知道我可以通過將Key作爲參數傳遞回來,但我想知道是否可以使用long id。
重要的是要記住,當使用此方法時,傳入的'id'必須是'Long'類型。 – 2013-07-03 11:49:04
任何其他使用'String'的方法? – serj 2015-02-18 21:54:50