博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring Data MongoDB:查询
阅读量:7103 次
发布时间:2019-06-28

本文共 1674 字,大约阅读时间需要 5 分钟。

hot3.png

Spring Data MongoDB提供了MongoTemplate方便我们队Mongodb进行CRUD操作。

1.简单条件查询

单个条件查询

接口定义:

/**	 * 根据条件查询	 * @param query	 * @param collectionName	 * @return	 */	T findOne(Query query,String collectionName);

Dao实现方法:

@Resource	private MongoTemplate mongoTemplate;	@Override	public Order findOne(Query query, String collectionName) {		return mongoTemplate.findOne(query, Order.class,collectionName);	}

测试查询:使用Query

@Test	public void findOne(){		String collectionName = "order";		//查询条件为:onumber = 001		Query query = new Query(Criteria.where("onumber").is("001"));		Order order = orderMongoDao.findOne(query, collectionName);		System.out.println(order.getCname());	}

 

@Test	public void findOne2(){		String collectionName = "order";		//查询条件为:onumber = 001 and cname = kehu1		Query query = new Query(Criteria.where("onumber").is("001").and("cname").is("kehu1"));		Order order = orderMongoDao.findOne(query, collectionName);		System.out.println(order.getCname());	}
@Test	public void findOne3() {		String collectionName = "order";		// 查询条件为:onumber = 001 or onumber = 002		Query query = new Query(				new Criteria().orOperator(						Criteria.where("onumber").is("001"), 						Criteria.where("onumber").is("002"))				);		Order order = orderMongoDao.findOne(query, collectionName);		System.out.println(order.getCname());	}

测试查询:使用BasicQuery

@Test	public void findOne4() {		String collectionName = "order";		// 查询条件为:onumber=001		DBObject dbObject = new BasicDBObject();		dbObject.put("onumber", "001");		Query query = new BasicQuery(dbObject);		Order order = orderMongoDao.findOne(query, collectionName);		System.out.println(order.getCname());	}

 

转载于:https://my.oschina.net/u/3100849/blog/1528117

你可能感兴趣的文章
[20171225]没有备份数据文件的恢复.txt
查看>>
精通SpringBoot——第五篇:写一个spring-boot-starter包
查看>>
Json学习
查看>>
Airbnb: React Native 从选择到放弃
查看>>
Eclipse中Tomcat配置问题
查看>>
Honda Connect应用程序泄漏超过50,000名用户的个人信息
查看>>
Fujikura Ltd联合NTT Docomo Inc开展测试,要将直接甲醇燃料电池用于灾区应急场景中...
查看>>
Linux下使用split按行数进行切割
查看>>
英国伦敦成为首个获得区块链技术领域专利的国家
查看>>
盘点2015年英特尔旧金山IDF峰会上的黑科技
查看>>
解读《新一代人工智能发展规划》,企业如何才能迎来产业高潮
查看>>
「镁客·请讲」云从孙庆凯:不能盈利再多技术也是枉然,2018年将是市场洗牌期...
查看>>
造作吧!让AirSelfie迷你无人机带你随时随地体验航拍
查看>>
SQL性能优化
查看>>
李开复说明年有一批AI创企会倒闭,不想死的创业公司需要警惕什么?
查看>>
U盘安装Ubuntu 16.04出现:Failed to load ldlinux.c32
查看>>
隆国强:用信息技术推动制造业转型升级 企业需练好内功
查看>>
java简单统计.java文件中的有效代码行,空行,注释行
查看>>
Android面试题整理
查看>>
mysql中的主从复制slave-skip-errors参数使用方法
查看>>