我正在Google App Engine上运行应用程序,而且我在使用JDO获取数据时遇到问题。我有类Message,它有属性private List<String> labels;
。现在我想要一些搜索功能,它将一个字符串(标签)作为参数,并搜索所有消息以获取具有给定标签的消息。问题在于JDO查询,现在我有
this(string this.label是一个搜索参数):
String query = "select from " + Message.class.getName() + " where (labels.contains('" + this.label + "')) ";
它适用于localhost,但不适用于GAE(返回NULL)。另一个(和天真的)尝试是
query = "select from " + Note.class.getName() + " where labels=='" + this.label + "'";
它也只适用于localhost,而不是GAE
有人知道怎么做吗?谢谢你的帮助
答案 0 :(得分:0)
基本上你的陈述是错误的。它应该是这样的:
String query =“SELECT FROM”+ Message.class.getName()+ “WHERE labels.contains(i)&amp;&amp; i.label == labelParam”+ “VARIABLES”+ Labels.class.getName()+“i”+ “PARAMETER java.lang.String labelParam”
祝你好运