← 목록

RESTful APIs를 활용한 데이터베이스 연동 방법

작성: 2024년 05월 05일읽기: 약 3분

웹 개발을 배우는 여러분, 오늘은 RESTful APIs를 사용하여 데이터베이스와 어떻게 연동하는지 알아볼 거예요. RESTful API는 웹 개발에서 데이터를 주고받는 효율적인 방법 중 하나입니다. 복잡한 기술 용어는 최대한 피하면서, 이해하기 쉽게 설명해드릴게요.

RESTful API란 무엇인가요?

간단히 말해서, RESTful API는 인터넷을 통해 컴퓨터 또는 시스템들이 서로 통신할 수 있게 해주는 규칙들의 집합입니다. 이를 통해 웹 애플리케이션에서 데이터를 생성, 조회, 수정, 삭제할 수 있는 기능을 구현할 수 있어요.

데이터베이스 연동 기본

데이터베이스와 연동하기 위해서는 먼저 서버와 데이터베이스 간의 연결이 필요합니다. 여기서는 Node.js와 Express 프레임워크를 사용한 예를 들어 설명할게요.

예제: Node.js에서 RESTful API 구현하기

  1. Express 설치하기

    먼저, 프로젝트 폴더를 만들고, 그 안에서 다음 명령어를 실행해 Express를 설치합니다.

    npm init -y
    npm install express
    
  2. 서버 설정하기

    index.js 파일을 생성하고, 아래의 코드를 입력하여 기본 서버를 설정합니다.

    const express = require('express');
    const app = express();
    const PORT = 3000;
    
    app.use(express.json());
    
    app.listen(PORT, () => {
      console.log(`Server is running on port ${PORT}`);
    });
    
  3. 데이터베이스 연동하기

    여기서는 간단한 예로 MongoDB를 사용합니다. MongoDB와 연동하기 위해 mongoose 패키지를 설치해야 합니다.

    npm install mongoose
    

    그 다음, index.js에 다음 코드를 추가하여 MongoDB 데이터베이스에 연결합니다.

    const mongoose = require('mongoose');
    
    mongoose.connect('mongodb://localhost:27017/yourDatabaseName', {
      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!");
    });
    
  4. API 라우트 생성하기

    이제 실제로 데이터를 처리할 API 라우트를 만들어보겠습니다. 예를 들어, 사용자 정보를 저장하는 간단한 API를 만들어봅시다.

    const User = require('./models/User'); // User 모델을 불러옵니다.
    
    // 사용자 생성 API
    app.post('/users', async (req, res) => {
      try {
        const user = new User(req.body);
        await user.save();
        res.status(201).send(user);
      } catch (error) {
        res.status(400).send(error);
      }
    });
    
    // 사용자 정보 조회 API
    app.get('/users', async (req, res) => {
      try {
        const users = await User.find({});
        res.send(users);
      } catch (error) {
        res.status(500).send(error);
      }
    });
    

이제 기본적인 RESTful API를 사용하여 데이터베이스와 연동하는 방법을 알아보았습니다. 이 예제를 바탕으로 다양한 기능을 추가하고, 여러분만의 웹 애플리케이션을 만들어보세요. 웹 개발은 실습을 통해 배우는 것이 가장 좋으니, 많이 시도해보고 실험해보는 것이 중요합니다. Happy coding!