目录
MongoDB中的文档本质上是一种类似JSON的BSON格式的数据。
BSON是一种类似JSON的二进制格式数据,它可以理解为在JSON基础上添加了一些新的数据类型。
MongoDB的基本操作
首先要导入操作MongoDB所需要的jar包:
Java连接MongoDB数据库
MongoClient mc=new MongoClient("localhost",27017);
MongoDatabase database = mc.getDatabase("myschool");
MongoCollection<Document> collection = database.getCollection("student");
第一句是获取链接对象。
第二句是获取myschool的数据库,如果没有会在添加的时候自动的创建。
第三句是获取名为student的集合,如果没有也会在添加的时候自动的创建
新增
方式一:
package com.ape.select;
import java.util.Date;
import org.bson.Document;
import com.ape.bean.Student;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.mongodb.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
public class addDemoGson {
public static void main(String[] args) {
Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
//连接对象
MongoClient mc = new MongoClient("localhost",27017);
//库对象
MongoDatabase db = mc.getDatabase("myschool");
//集合对象
MongoCollection<Document> collection = db.getCollection("student");
Student s =new Student();
s.setBirthday(new Date());
s.setClassid(100);
s.setSid(2);
s.setSname("小王");
s.setSsex("男");
//转换
String json = gson.toJson(s);
System.out.println(json);
collection.insertOne(Document.parse(json));
mc.close();
}
}
该种方式进行了手动的解析。
方式二:
package com.ape.add;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import org.bson.Document;
import com.mongodb.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
public class adddemo {
public static void main(String[] args) {
MongoClient mc=new MongoClient("localhost",27017);
MongoDatabase database = mc.getDatabase("myschool");
MongoCollection<Document> collection = database.getCollection("student");
// Document document = new Document();
// document.put("name", "张三");
// document.put("age", 18);
// document.put("birthday", new Date());
// document.put("sex", "男");
// collection.insertOne(document);
//mc.close();
//添加多条
Document document1 = new Document();
document1.put("name", "张三");