Armazenando dados no MongoDB através do Node.JS
Nos últimos anos, o MongoDB se tornou um dos bancos de dados NoSQL mais populares. Sua flexibilidade e escalabilidade o tornaram a escolha preferida para armazenar dados em aplicativos da Web modernos. Neste blog, aprenderemos como armazenar dados no MongoDB usando Node.js.
Antes de iniciar o blog, primeiro vamos conhecer o MongoDB e o Node.Js.
O que é o MongoDB?
O MongoDB é um popular banco de dados NoSQL orientado a documentos de código aberto, projetado para armazenar e gerenciar grandes volumes de dados não estruturados ou semiestruturados.
O que é Node.js?
Node.js é um ambiente de tempo de execução JavaScript de plataforma cruzada e código aberto que permite aos desenvolvedores executar código JavaScript fora de um navegador da web.
Criando um projeto Node.js
A primeira etapa é inicializar seu aplicativo e, para isso, você deve escrever o comando npm init em seu prompt de comando.
mkdir node-mongo
cd node-mongo
npm init
Agora, você tem que instalar 2 dependências:
- Express: é uma estrutura de aplicativo da Web popular para Node.js que simplifica o processo de criação de aplicativos da Web robustos, escaláveis e seguros.
- Mongoose: permite aos desenvolvedores escrever consultas MongoDB na sintaxe JavaScript e fornece uma camada de abstração entre o aplicativo e o banco de dados.
npm i express mongoose
import express from "express";
const app = express();
const PORT = 8000;
app.listen(PORT, () => {
console.log(`The server is running at port ${PORT}`);
});
Para conectar o MongoDB ao seu ambiente node.js, você precisa criar uma pasta aqui que estou nomeando por banco de dados, nessa pasta você precisa criar o arquivo db.js.
import mongoose from "mongoose";
const Connection = async () => {
mongoose.set("strictQuery", false);
const URL = `mongodb://localhost:27017/{YOUR_DATABASE_NAME}`
try {
await mongoose.connect(URL, {
useUnifiedTopology: true,
useNewUrlParser: true,
});
console.log("Database connected");
} catch (error) {
console.log("you got this ", error);
}
};
export default Connection;
import express from "express";
import Connection from "./database/db.js";
import Routes from "./routes/route.js";
const app = express();
const PORT = 8000;
app.use("/", Routes);
Connection();
app.listen(PORT, () => {
console.log(`server is running at port ${PORT}`);
});
The server is running at port 8000
Database connected
Em caso de encontrar algum erro, basta seguir as etapas novamente.
Criando Esquema
Agora, nosso próximo passo é criar o esquema da coleção (a coleção é o equivalente a uma tabela em um banco de dados relacional).
Crie uma pasta chamada schema sob esta pasta e crie um arquivo chamado Schema.js.
import mongoose from "mongoose";
const userSchema = mongoose.Schema({
name: String,
username: String,
email: String,
phone: String,
});
const user = mongoose.model("user", userSchema);
export default user;
Agora, o próximo passo é criar APIs para armazenar dados no Mongodb através do Nodejs.
Crie uma pasta chamada routes dentro desta pasta crie um arquivo chamado route.js. Neste arquivo, você definirá as APIs que usaremos para armazenar dados.
import express from "express";
import User from "../schema/user-schema.js";
const router = express.Router();
router.post("/add", async (req, res) => {
const user = req.body;
const newUser = new User(user);
try {
await newUser.save();
res.status(201).json(newUser);
} catch {
res.status(409).json({ message: error.message });
}
});
router.get("/all", async (req, res) => {
try {
const users = await User.find({});
res.status(200).json(users);
} catch (error) {
res.status(404).json({ message: error.message });
}
});
router.put("/:id", async (req, res) => {
let user = req.body;
const editUser = new User(user);
try {
await User.updateOne({ _id: req.params.id }, editUser);
res.status(201).json(editUser);
} catch (error) {
res.status(409).json({ message: error.message });
}
});
router.delete("/:id", async (req, res) => {
try {
await User.deleteOne({ _id: req.params.id });
res.status(200).json({ message: "User deleted Successfully" });
} catch (error) {
console.log(error);
}
});
Para este blog, usarei o cliente Thunder para testar a API, pois é fácil de instalar e executar as APIs. Você só precisa instalar sua extensão no código do visual studio.
É assim que você pode testar sua API no cliente Thunder:
- Publicar
3. Excluir
Conclusão
Neste blog, aprendemos como executar operações CRUD no MongoDB com a ajuda da API RESTful criada usando Nodejs. Com esse conhecimento, você poderá criar aplicativos mais complexos usando o MongoDB como seu armazenamento de dados.





































![O que é uma lista vinculada, afinal? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)