目前,刚刚接触springData框架,欢迎大家一起讨论指点,谢谢!
刚刚看了org.springframework.data.mongodb.core.query.Criteria类中的两个方法,拿出来和大家一起探讨。
Query在官方的api文档描述中有这么一句话,Central Class for creating queries(创建query对象的核心类),也就是说这个类可以作为创建Query类的参数。
在项目中用到了Criteria一下两个方法:
1、is(Object O)
creates a criterion using equality
官方的描述大概是指:创建一个等式规范。
2、where(String key)
static factory method to create a criteria using the provieded key
这是一个静态工厂方法,利用key创建一个规范。
Creates a criterion using the $in operator.
该方法和Mongodb中$in的效果是相同的。
通常,方法1和2会结合起来使用,例如
Criteria.where("id").is(obj.getId());
翻译为sql为:
select ... from ... where id=obj.getId();
也就是说where相当于sql中的where,is相当于sql中的=。