MongoDB와의 연동을 위한 Node.js 및 Express 설정 가이드 🌐
웹 개발을 하다 보면 데이터를 저장하고 관리할 필요가 있습니다. 여기서 MongoDB가 빛을 발합니다! MongoDB는 유연하고 확장 가능한 데이터베이스 시스템으로, 웹 애플리케이션에 매우 적합합니다. 오늘은 Node.js와 Express를 사용하여 MongoDB와 어떻게 연동하는지 알아보겠습니다. 복잡한 용어는 최대한 피하면서 쉽게 설명할게요!
시작하기 전에
Node.js와 MongoDB가 설치되어 있어야 합니다. 또한, Express 프레임워크를 사용할 예정이므로, 이 또한 설치해야 합니다. 모두 준비되었다면, 시작해볼까요?
프로젝트 설정
-
먼저, 프로젝트 폴더를 만들고 그 안에서 npm을 초기화합니다.
mkdir my-mongo-project cd my-mongo-project npm init -y
-
Express와 MongoDB를 위한 Node.js 드라이버인
mongoose
를 설치합니다.npm install express mongoose
Express 앱 설정
-
index.js
파일을 생성하고 아래의 코드를 입력하여 Express 앱을 초기화합니다.const express = require('express'); const app = express(); const port = 3000; app.get('/', (req, res) => { res.send('Hello MongoDB with Node.js and Express!'); }); app.listen(port, () => { console.log(`App listening at http://localhost:${port}`); });
-
이제 앱을 실행하여 서버가 잘 작동하는지 확인해봅시다.
node index.js
MongoDB 연동
-
MongoDB와 연동하기 위해, 먼저
mongoose
를 설정합니다.index.js
파일에 다음 코드를 추가하세요.const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/my_database', { useNewUrlParser: true, useUnifiedTopology: true }); const db = mongoose.connection; db.on('error', console.error.bind(console, 'connection error:')); db.once('open', function() { console.log("We're connected to the database!"); });
이 코드는 MongoDB에 연결을 시도하고, 연결 상태에 따라 콘솔에 메시지를 출력합니다.
-
이제, 간단한 데이터 스키마와 모델을 만들어 봅시다.
index.js
에 다음 코드를 추가하세요.const Schema = mongoose.Schema; const blogSchema = new Schema({ title: String, author: String, body: String, comments: [{ body: String, date: Date }], date: { type: Date, default: Date.now }, hidden: Boolean, meta: { votes: Number, favs: Number } }); const Blog = mongoose.model('Blog', blogSchema);
이 코드는 블로그 포스트에 대한 간단한 스키마를 정의합니다. 여기에는 제목, 저자, 본문 등의 필드가 포함되어 있습니다.
데이터 저장하기
- MongoDB에 데이터를 저장하기 위해, 새로운 블로그 포스트 인스턴스를 만들고 저장하는 코드를 추가해봅시다.
const myBlogPost = new Blog({ title: 'MongoDB와 Node.js 연동하기', author: 'Jane Doe', body: 'MongoDB와 Node.js를 연동하는 것은 정말 쉽습니다!', comments: [{ body: '정말 유용한 글이네요!', date: new Date() }], hidden: false }); myBlogPost.save(function (err, myBlogPost) { if (err) return console.error(err); console.log('새로운 블로그 포스트가 성공적으로 저장되었습니다.'); });
이제 기본적인 MongoDB와 Node.js 및 Express의 연동 방법을 알아보았습니다. 이 가이드를 통해 간단한 웹 애플리케이션에 데이터베이스 기능을 추가할 수 있게 되었길 바랍니다. 코드를 조금씩 변형해보면서 여러분만의 프로젝트에 적용해보세요!