查询
介绍
Morphia的查询接口从其字面含义上来说非常的直接,简单易懂。它允许你使用基于实体字段的过滤条件查询,排序,截取和限制查询结果的数量。
查询接口Query同样实现了QueryResult接口,通过它可以访问查询出的数据
过滤器Filter
- Morphia支持一般的过滤方法.filter(criteria, value)。过滤条件是由字段的名称和操作符组成。在默认的情况下不同的查询条件之间的关系为and,例如
Datastore ds = ...
Query q = ds.createQuery(MyEntity.class).filter("foo >", 12);
再例如,查询满足foo的值位于12到30之间的所有实体信息例子如下
Datastore ds = ...
Query q = ds.createQuery(MyEntity.class).filter("foo >", 12).filter("foo <", 30);
操作符Operator
- 在过滤器filter中使用的操作符与在Mongodb中使用的操作符很接近,如下
操作符 | mongodb 操作符 |
---|---|
= | $eq |
!=, <> | $ne |
>, <, >=,<= | $gt, $lt, $gte, $lte |
in | $in |
nin | $nin |
elem | $elemMatch |
... | ... |