Spring Data的MongoTemplate和MongoRepository有什么区别?
我需要编写一个应用程序,使用该应用程序可以使用spring-data和mongodb进行复杂的查询。我从使用MongoRepository开始,但很难在复杂的查询中查找示例或实际理解语法。
我说的是这样的查询:
@Repository
public interface UserRepositoryInterface extends MongoRepository<User, String> {
List<User> findByEmailOrLastName(String email, String lastName);
}
或者使用基于JSON的查询,我通过反复试验尝试,因为我没有得到正确的语法。即使在阅读了mongodb文档之后(由于语法错误而导致的非工作示例)。
@Repository
public interface UserRepositoryInterface extends MongoRepository<User, String> {
@Query("'$or':[{'firstName':{'$regex':?0,'$options':'i'}},{'lastName':{'$regex':?0,'$options':'i'}}]")
List<User> findByEmailOrFirstnameOrLastnameLike(String searchText);
}
在通读了所有文档之后,似乎记录得更好。我指的是以下文档:mongoTemplate
MongoRepository
http://static.springsource.org/spring-data/data-mongodb/docs/current/reference/html/
你能告诉我什么更方便,更强大的使用吗? 或?两者是否都同样成熟,或者其中一个比另一个缺乏更多的功能?mongoTemplate
MongoRepository