Node.js 通过mongose连mongoDB
直接用的mongoDB Atlas,有免费的云集群可以用,免费的mongoDB Atlas
mongose是一个对象文档映射(ODM)库,用来在node.js上和mongoDB交互的。
比较详细的介绍见这个:https://www.freecodecamp.org/news/introduction-to-mongoose-for-mongodb-d2a7aa593c57/
建立连接
这里的path是你的mongoDB的地址
const mongoose = require('mongoose');
mongoose.connect(path, {useNewUrlParser: true, useUnifiedTopology: true})
建立连接之后,我们就可以处理数据了
Schema
Schema主要用于定义文档的结构和字段的验证规则等。它描述了文档中包含哪些字段,每个字段的数据类型、默认值、是否必填、验证规则等信息。
我们可以这样定义一个Schema
const Schema = mongoose.Schema
const personSchema = new Schema({
name: {type: String, required: true},
age: Number,
favoriteFoods: [String]
})
但是Schema不像我们写Java时候地PO,它不直接映射到collection
Model
Mode基于Schema创建,它用于和数据库产生交互,用于创建,删除,更新文档等。一个Mode对应一个collection
const Person = mongoose.model("Person", personSchema);
这个操作会创建一个名为Person地Model,对应MongoDB里的collection应该叫people,会默认转换为小写复数形式。
通过下面地代码,可以创建一个Person地对象并且保存到MongoDB中。
let p = new Person({name: "Jane Fonda", age: 84, favoriteFoods: ["eggs", "fish", "fresh fruit"]});
p.save(function (err, data) {
if (err) return console.error(err);
})