-
我们可以知道访问mongodb方式主要有俩种:
- spring 提供的 spring-data-mongodb.jar(这种方式网上资料比较多,随便搜几篇看看就明白了)
- mongodb 官方提供的 mongodb-java-driver.jar
-
spring-data-mongodb.jar和mongodb-java-driver.jar的关系
- mongodb-java-driver是mongodb官方提供的java访问mongodb数据的驱动包,也就是可以写最原始的查询语句来访问mongodb数据库。类似于mysql的JDBC查询。
- spring-data-mongodb是spring提供的访问mongodb数据库的包,他封装了mongodb官方的驱动,使我们访问mongodb更加方便快捷,以及对象化。
-
mongodb-java-driver.java驱动的区别
- 3.4 之前返回的是DBObject对象
- 3.6 之后返回的是Document对象
- 在提供的方法上也有一定的区别,比如插入,3.4提供了save,insert方法,而3.6提供了insertOne,insertMany方法。
看源码可以知道 Document 对象比DBObject对象扩展性更强,Document继承了Map(LinkedHashMap),Bson。
-
spring-data-mongodb可以支持返回DBObject和Document对象,所以用原生查询也让spring封装成Query对象,这样兼容性会比较好,就算升级了驱动对原来的代码影响也不会太大。
Query query = new BasicQuery(DBObject);
或者
Query query = new BasicQuery(Document); -
建议用spring-data-mongodb来访问mongodb数据库,如果用到原生查询,也要用spring提供的方法封装一下。
java访问mongodb总结
最新推荐文章于 2025-05-17 15:53:50 发布