Java操作MongoDB
一. mongodb-driver
mongodb-driver是mongo官方推出的java连接mongoDB的驱动包,相当于JDBC驱动。
例如:
创建工程,引入依赖
<dependency> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver</artifactId> <version>3.6.3</version> </dependency>
创建测试类:简单查询
/** * @program: mongoDBTest * @description: mongoDB测试:简单查询 * @author: YuKai Fan * @create: 2019-04-19 16:57 **/ public class MongoDBTest { public static void main(String[] args) { //连接mongo服务器 MongoClient client = new MongoClient("192.168.249.128"); //得到要操作的数据库 MongoDatabase spitdb = client.getDatabase("spitdb"); //得到要操作的集合 MongoCollection<Document> spit = spitdb.getCollection("spit"); //得到集合中所有的文档 FindIterable<Document> documents = spit.find(); //遍历数据 for (Document document : documents) { System.out.println("内容:" + document.get("content")); System.out.println("访问量:" + document.get("visits")); } client.close(); } }
结果:

条件复杂查询:
/** * @program: mongoDBTest * @description: mongoDB测试:条件查询查询 ,复杂查询 * @author: YuKai Fan * @create: 2019-04-19 16:57 **/ public class MongoDBTest { public static void main(String[] args) { //连接mongo服务器 MongoClient client = new MongoClient("192.168.249.128"); //得到要操作的数据库 MongoDatabase spitdb = client.getDatabase("spitdb"); //得到要操作的集合 MongoCollection<Document> spit = spitdb.getCollection("spit"); //封装条件查询 //BasicDBObject bson = new BasicDBObject("content","最近有冷"); //封装条件查询 查询访问量大于2000的数据 find({"visits":{$gt,2000}}) BasicDBObject bson = new BasicDBObject("visits",new BasicDBObject("$gt", 2000)); //得到集合中所有的文档 FindIterable<Document> documents = spit.find(bson); //遍历数据 for (Document document : documents) { System.out.println("内容:" + document.get("content")); System.out.println("访问量:" + document.get("visits")); } client.close(); } }
添加数据:
/** * @program: mongoDBTest * @description: mongoDB测试:添加数据 * @author: YuKai Fan * @create: 2019-04-19 16:57 **/ public class MongoDBTest { public static void main(String[] args) { //连接mongo服务器 MongoClient client = new MongoClient("192.168.249.128"); //得到要操作的数据库 MongoDatabase spitdb = client.getDatabase("spitdb"); //得到要操作的集合 MongoCollection<Document> spit = spitdb.getCollection("spit"); //添加记录 Map<String, Object> map = new HashMap<String, Object>(); map.put("content", "时间过得好快"); map.put("userid", "1016"); map.put("visits", 1000); Document document = new Document(map); spit.insertOne(document); client.close(); } }
结果:


浙公网安备 33010602011771号