MongoDB的对象存入和取出

什么是MongoDB

MongoDB是当前最受欢迎的新一代数据库。相比于传统关系数据库,MongoDB对于大数据,高并发以及高可靠性有强大的支持。相比于其他的NoSQL数据库,MongoDB的基于文档的数据模型及其动态建模的特性使得它更加自由灵活,适用于各种应用场景如CRM,内容管理,事件纪录,商情分析,手机应用,社交等等

JavaAPI的简单操作

import com.alibaba.fastjson.JSON;
import com.mongodb.MongoClient;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;

import java.io.Serializable;

/**
 * @ClassName: TestMongoDB
 * @Description: 
 * @Author: xuezhouyi
 * @Version: V1.0
 **/
public class TestMongoDB {
	public static void main(String[] args) {
		/* 创建mongo客户端 */
		MongoClient client = new MongoClient("localhost", 27017);

		/* 获取myDB数据库对象 */
		MongoDatabase myDB = client.getDatabase("mydb");

		/* 获取users集合 */
		MongoCollection<Document> users = myDB.getCollection("users");

		/* 创建测试对象 */
		Student student = new Student("Jack", 18);

		/* 对象转Json */
		String stuJson = JSON.toJSONString(student);

		/* 将Json转为文档 */
		Document doc = Document.parse(stuJson);

		/* 将文档插入users集合中 */
		users.insertOne(doc);

		/* 从集合中查找第一个文档 */
		Document firstObj = users.find().first();

		/* 将文档转换成对象 */
		Student stu = JSON.parseObject(firstObj.toJson(), Student.class);
	}

	public static class Student implements Serializable {
		private String name;
		private Integer age;

		public Student(String name, Integer age) {
			this.name = name;
			this.age = age;
		}

		public String getName() {
			return name;
		}

		public void setName(String name) {
			this.name = name;
		}

		public Integer getAge() {
			return age;
		}

		public void setAge(Integer age) {
			this.age = age;
		}

		@Override
		public String toString() {
			return "Student{" + "name='" + name + '\'' + ", age=" + age + '}';
		}
	}
}
发布了54 篇原创文章 · 获赞 19 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/DataIntel_XiAn/article/details/100184566
今日推荐