mongodb find 和findone都查询不到数据

zhouyusunquan 2015-10-08 10:07:20
// TODO Auto-generated method stub
// Query query=new Query();
// Criteria criteria=new Criteria();
// for (String key : map.keySet()) {
// criteria.where(key).is(map.get(key));
// }
// return mongoTemplate.findOne(query,clazz);



Query query = new Query();
Criteria criteria = new Criteria();
criteria.where("loginname").is(map.get("loginname"));
query.addCriteria(criteria);
List<T> list=mongoTemplate.find(query,clazz);
if(list==null||list.size()==0){
return null;
}else{
return list.get(0);
}

数据都是空的
...全文
983 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复

楼主这个问题怎么解决的 我今天也遇到这个问题了

回复
Sunnnnnnny_ 2019-04-17
mongoTemplate.find(query, Picture.class,"job_device_data");
回复
Sunnnnnnny_ 2019-04-17
指定一下查询的Collection,用mongoTemplate.findOne(query, User.class,"collection_name");应该可以的
回复
xwn_2016 2017-06-15
public User findOneByUsername(String username) {  
        Query query = new Query();  
        Criteria criteria = Criteria.where("username").is(username);  
        query.addCriteria(criteria);  
        return this.mongoTemplate.findOne(query, User.class);  
    } 
和你的区别在 criteria的使用上,我这个可以查出结果,你不妨试一下
回复
点滴寸土 2017-06-14
可以先在MongoDB里直接用脚本查试试
回复
G-Sheep 2017-06-13
楼主找到问题了吗?我也遇到这个问题了,不知道什么情况
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2015-10-08 10:07
社区公告
暂无公告