MongoDB: Intro e Implementação
Área: Backend | Nível recomendado: Iniciante
Desenvolva habilidades com o MongoDB, um banco de dados NoSQL líder, e aprenda a realizar o deploy de um banco de dados na nuvem usando o MongoDB Cloud Atlas. Esta etapa é essencial para preparar o ambiente para integração com aplicações hospedadas em plataformas de cloud, como o CodeSpaces.
Vídeo
Link direto: https://youtu.be/Csk1U5b-uuI
Tópicos
Introdução ao MongoDB:
Explanação sobre bancos de dados NoSQL e o ecossistema do MongoDB.
Instalação do MongoDB Compass e introdução às suas funcionalidades.
Deploy no MongoDB Cloud Atlas:
Criação de uma conta no MongoDB Cloud Atlas.
Configuração do cluster MongoDB no Cloud Atlas.
Conexão do MongoDB Compass com o banco de dados no Cloud Atlas.
CRUD com MongoDB:
Execução de operações CRUD utilizando o MongoDB Compass conectado ao Cloud Atlas.
Integração do MongoDB Cloud Atlas com o projeto backend Node.js.
Material de Apoio
Repositório no GitHub
PDF para Download
Miro
Exercícios de Fixação
Use esses exercícios para reforçar o que acabou de aprender. Se errar, leia a explicação para entender melhor o conceito.
Qual comando usamos para instalar o MongoDB Driver no Node.js?
A) npm install mongodb
B) npm install mongoose
C) npm install mongo
D) npm install mongodriver
Resposta correta
Qual comando usamos para instalar o MongoDB Driver no Node.js?
Resposta Correta: A
Feedback: O comando npm install mongodb é usado para instalar o driver oficial do MongoDB para Node.js.
Complete o código para conectar ao MongoDB usando o MongoClient, inicializar o banco de dados e exibir uma mensagem de sucesso.
Resposta correta
Complete o código para conectar ao MongoDB usando o MongoClient.
Resposta Correta:
Feedback: O método connect é usado para estabelecer a conexão com o banco de dados, e a mensagem Banco de dados conectado com sucesso! é exibida após a conexão ser bem-sucedida.
Resposta correta
Verdadeiro ou Falso: O MongoDB é um banco de dados relacional.
Resposta Correta: B
Feedback: O MongoDB é um banco de dados NoSQL, não relacional, que armazena dados em documentos JSON-like.
Qual comando usamos para iniciar a aplicação com Nodemon?
A) npm start
B) npm run start
C) npm run dev
D) nodemon app.js
Resposta correta
Qual comando usamos para iniciar a aplicação com Nodemon?
Resposta Correta: C
Feedback: O comando npm run dev é comumente usado para iniciar a aplicação com Nodemon, conforme configurado no package.json.
Resposta correta
Complete o código para criar um endpoint que adicione um novo documento à collection no MongoDB.
Resposta Correta:
Feedback: O método insertOne é usado para adicionar um novo documento à collection do MongoDB.
Exercícios de Validação
Esses exercícios testarão sua compreensão prática. Revise o feedback para melhorar suas habilidades.
Desafio de Código
Crie um endpoint adicional na aplicação ExpressJS que atualize um documento existente na collection do MongoDB. Se o documento não existir, o endpoint deve responder com "Item não encontrado".
Implementar o novo endpoint no arquivo
index.js.
Resposta esperada
Feedback: Certifique-se de que o servidor está ouvindo na porta correta e que a rota /personagem/:id está devidamente configurada.
Revisão de Código
Analise o código a seguir, encontre e corrija o erro.
Resposta Correta
Erros:
Conexão com o banco de dados MongoDB não é estabelecida.
O ID do livro não é convertido para
ObjectIdao buscar o documento.
Feedback: Certifique-se de que a conexão com o banco de dados MongoDB está estabelecida antes de acessar o banco de dados e a collection. Além disso, converta corretamente o ID do livro para ObjectId ao buscar o documento.
Projeto Prático
Implemente um CRUD completo para gerenciar uma entidade de "Livros" em uma biblioteca usando ExpressJS e MongoDB. Os livros devem ter as propriedades "título", "autor" e "ano de publicação". Crie endpoints para adicionar, listar, atualizar e deletar livros. Se o livro não for encontrado, o endpoint deve responder com "Livro não encontrado".
Tarefas
Configuração Inicial:
Inicialize um novo projeto NodeJS.
Instale o ExpressJS e o MongoDB Driver.
Configure o Nodemon para reiniciar o servidor automaticamente.
Conexão com o MongoDB:
Conecte-se ao MongoDB utilizando o MongoClient.
Inicialize o banco de dados e a collection "livros".
Implementação dos Endpoints:
Implemente um endpoint para adicionar um novo livro (
POST /livros).Implemente um endpoint para listar todos os livros (
GET /livros).Implemente um endpoint para obter um livro específico por ID (
GET /livros/:id).Implemente um endpoint para atualizar um livro por ID (
PUT /livros/:id).Implemente um endpoint para deletar um livro por ID (
DELETE /livros/:id).
Código esperado
Feedback Detalhado
Verificação dos Endpoints: Certifique-se de testar cada rota (
/livros,/livros/:id,/livroscom POST, PUT e DELETE) acessandohttp://localhost:3000e verificando as respostas.Estrutura: A estrutura básica da aplicação deve seguir a mesma lógica apresentada na missão original.
Diferença Sutil: A inclusão da entidade "Livros" oferece um exercício prático de aplicação do conhecimento adquirido, sem introduzir novos conceitos.
Last updated