Imagem do artigo Criando um CRUD com NodeJS e MongoDB: Criação do projeto NodeJS

16.4. Criando um CRUD com NodeJS e MongoDB: Criação do projeto NodeJS

Página 88 | Ouça em áudio

Uma das principais características que torna o NodeJS uma excelente escolha para o desenvolvimento de APIs é a sua capacidade de lidar com operações de I/O de maneira eficiente. Neste capítulo, vamos discutir como criar um CRUD (Create, Read, Update, Delete) com NodeJS e MongoDB. Vamos começar com a criação do projeto NodeJS.

Criação do Projeto NodeJS

Para começar, você precisa ter o NodeJS e o NPM (Node Package Manager) instalados em seu sistema. Você pode baixá-los e instalá-los a partir do site oficial do NodeJS. Uma vez instalado, você pode verificar a instalação executando os seguintes comandos no seu terminal:

node -v
npm -v

Se ambos os comandos retornarem uma versão, isso significa que a instalação foi bem-sucedida. Agora, vamos criar um novo projeto NodeJS. Para isso, crie um novo diretório para o seu projeto e navegue até ele usando o terminal. Em seguida, inicialize um novo projeto NodeJS com o seguinte comando:

npm init -y

Isso criará um novo arquivo 'package.json' no diretório do seu projeto. Este arquivo é usado para gerenciar as dependências do seu projeto.

Instalação de Dependências

Para este projeto, precisaremos de algumas dependências. A primeira é o Express, um framework NodeJS que facilita a criação de APIs. Para instalá-lo, execute o seguinte comando:

npm install express

Em seguida, vamos precisar do Mongoose, um ORM (Object-Relational Mapping) que facilita a interação com o MongoDB. Para instalá-lo, execute o seguinte comando:

npm install mongoose

Criação do Servidor Express

Depois de instalar as dependências, vamos criar nosso servidor Express. Crie um novo arquivo chamado 'server.js' e adicione o seguinte código:

const express = require('express');
const app = express();
const port = 3000;

app.listen(port, () => {
  console.log(`Server is running on port ${port}`);
});

Este é um servidor Express básico que escuta na porta 3000. Você pode iniciar o servidor com o seguinte comando:

node server.js

Criação do Modelo Mongoose

Antes de podermos interagir com o MongoDB, precisamos definir um modelo Mongoose. Este modelo representa a estrutura dos nossos dados. Para este exemplo, vamos criar um modelo para um 'User'. Crie um novo arquivo chamado 'User.js' e adicione o seguinte código:

const mongoose = require('mongoose');

const UserSchema = new mongoose.Schema({
  name: String,
  email: String,
  password: String,
});

module.exports = mongoose.model('User', UserSchema);

Este é um modelo básico que define um 'User' com um nome, email e senha.

Conectando ao MongoDB

Antes de podermos usar o nosso modelo, precisamos conectar ao MongoDB. Adicione o seguinte código ao 'server.js':

const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/myapp', { useNewUrlParser: true, useUnifiedTopology: true });

Isso vai conectar ao MongoDB que está rodando localmente na porta 27017. Se a conexão for bem-sucedida, você poderá começar a usar o seu modelo para criar, ler, atualizar e deletar usuários no MongoDB.

Criando Rotas CRUD

O próximo passo é criar as rotas CRUD. Cada rota será responsável por uma operação específica. Por exemplo, a rota 'POST /users' será usada para criar um novo usuário, enquanto a rota 'GET /users/:id' será usada para ler um usuário específico. Adicione as seguintes rotas ao 'server.js':

const User = require('./User');

app.post('/users', async (req, res) => {
  const user = new User(req.body);
  await user.save();
  res.send(user);
});

app.get('/users', async (req, res) => {
  const users = await User.find();
  res.send(users);
});

app.get('/users/:id', async (req, res) => {
  const user = await User.findById(req.params.id);
  res.send(user);
});

app.put('/users/:id', async (req, res) => {
  const user = await User.findByIdAndUpdate(req.params.id, req.body);
  res.send(user);
});

app.delete('/users/:id', async (req, res) => {
  await User.findByIdAndDelete(req.params.id);
  res.send({ message: 'User deleted' });
});

Com estas rotas, você tem um CRUD completo com NodeJS e MongoDB. Agora você pode criar, ler, atualizar e deletar usuários usando a sua API.

Em resumo, criar um CRUD com NodeJS e MongoDB é um processo simples e direto. Com o NodeJS, você pode criar APIs eficientes e escaláveis, enquanto o MongoDB permite que você armazene e recupere dados de maneira eficiente. Combinando os dois, você pode criar APIs poderosas que podem lidar com grandes volumes de dados e tráfego.

Agora responda o exercício sobre o conteúdo:

Qual é o processo para criar um CRUD com NodeJS e MongoDB?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Imagem do artigo Criando um CRUD com NodeJS e MongoDB: Conexão com o banco de dados MongoDB

Próxima página do Ebook Gratuito:

89Criando um CRUD com NodeJS e MongoDB: Conexão com o banco de dados MongoDB

4 minutos

Ganhe seu Certificado deste Curso Gratuitamente! ao baixar o aplicativo Cursa e ler o ebook por lá. Disponível na Google Play ou App Store!

Disponível no Google Play Disponível no App Store

+ de 6,5 milhões
de alunos

Certificado Gratuito e
Válido em todo o Brasil

48 mil exercícios
gratuitos

4,8/5 classificação
nas lojas de apps

Cursos gratuitos em
vídeo, áudio e texto