一. 添加依赖
<dependency> <groupId>org.mongodb</groupId> <artifactId>mongo-java-driver</artifactId> <version>3.4.2</version> </dependency>
二. 创建连接
private static MongoCollection<Document> collection = null;
public static void main(String[] args){ try {
MongoClient client = new MongoClient("ip", 27017);
MongoDatabase mydb = client.getDatabase("mydb");
System.out.println("连接成功"); //新创建一个集合 //mydb.createCollection("userinfo"); //获取指定集合的连接
collection = mydb.getCollection("userinfo");
} catch (Exception e){
e.printStackTrace();
}
}
三. 插入
public void insert(){
Document document = new Document();
document.append("name", "Jack");
document.append("age", 20);
document.append("scholl", "Beida");
document.append("address", "guangzhou"); //插入数组
document.append("likes", new ArrayList<String>(Arrays.asList(new String[]{"basketball", "football"}))); //插入内嵌文档
Document innerDoc = new Document();
innerDoc.append("father", "Ben");
innerDoc.append("mother", "meihua");
document.append("parent", innerDoc); //执行插入
collection.insertOne(document);
}
四. 查询
1. 查询一个
/**
* 查询一个
*/ public void findOne(){ //查询第一个文档
Document document = collection.find().first();
System.out.println(document.toJson());
}
2. 查询所有
/**
* 查询所有
*/ public void findAll(){
MongoCursor<Document> cursor = collection.find().iterator(); while (cursor.hasNext()){
System.out.println(cursor.next().toJson());
}
}
3. 条件查询
/**
* 条件查询,使用BasicDBObject
*/ public void find(){
BasicDBObject object = new BasicDBObject();
object.put("name", "Jack");
Document doc = collection.find(object).first(); if(doc != null){
System.out.println(doc.toJson());
}
}
五、更新
/**
* 更新文档
*/ public void update(){ //查询要更新的doc
BasicDBObject object = new BasicDBObject();
object.put("age", 20); //创建更新的doc
BasicDBObject newObj = new BasicDBObject();
newObj.put("age", 50); //具体用什么操作更新
BasicDBObject update = new BasicDBObject("$set", newObj);
collection.updateOne(object, update);
}
六、删除
public void delete(){
BasicDBObject object = new BasicDBObject(); object.put("name", "Jack");
collection.deleteOne(object);
}