본문 바로가기
Back-End/Express

[Node.js] Express + MySQL로 REST API 만들기 (1)

by j-y 2021. 4. 1.
반응형

Node.js로 REST API를 구현하는 프로젝트를 진행하며 Express.js와 MySQL을 연동해 구현하는데 자료가 생각보다 많이 없는 것 같아 직접 포스팅을 시작해보겠습니다!

 

Express.js는 현재 Node.js 플랫폼의 가장 인기있는 웹 프레임워크입니다. 가장 많이 사용하는 스프링과 비교했을 때 훨씬 빠르게 개발 환경을 세팅하고 실제 서버 코드를 구현할 수 있다는 장점이 있습니다.

현업에서도 많이 사용되고 있으며 타입스크립트와 함께 사용할 경우에는 보통 Nest.js 라는 프레임워크를 사용합니다.

 

일반적으로 Node.js 플랫폼과는 NoSQL이 호환성이 좋아 MongoDB를 많이 사용하는데, 이번 포스팅에서는 관계형 데이터베이스인 MySQL과 연동하여 API를 구현해 보도록 하겠습니다.

 

Express는 따로 디자인 패턴을 정해두지 않고 있는데, 코드 가독성유지보수성 등을 위하여 경로를 지정하는 route, 각 라우트의 입력값과 실제 쿼리문을 연결하는 controller, 실제 쿼리문을 작성하는 model의 레이어로 나누어 구조화하겠습니다.

 

이번 포스팅에서는 프로젝트 설정과 express 실행까지 진행하겠습니다.

 

준비물


  1. Node.js가 설치된 개발 환경
  2. 코드 편집기(VS Code)
  3. DB 서버(AWS RDS나 도커로 mysql 이미지 하나 올려서 하시면 될 것 같습니다)
  4. API 동작 확인을 위한 툴(Postman)

 

프로젝트 폴더 생성


프로젝트를 진행할 폴더를 하나 생성한 뒤 VS Code로 폴더를 열어줍니다.

package.json 파일 생성


터미널 창을 하나 새로 열고, 아래 명령어를 통해 package.json 파일을 생성합니다.

package.json 파일은 프로젝트의 정보를 담고있는 파일로, 해당 프로젝트에서 사용하는 패키지를 관리할 수 있습니다.

> npm init -y

명령어가 실행되면 좌측 탭에 package.json 파일이 생성된 것을 확인할 수 있습니다.

 

Express.js 설치


 

아래 명령어로 express를 설치합니다.

> npm i express

 

express가 정상적으로 설치되면 좌측 탭에 node_modules라는 디렉터리가 새로 생성되고, package.json 파일에 dependencies 항목이 추가되고 express 정보가 자동으로 추가된 것을 확인할 수 있습니다.

 

Express 동작 확인


express를 설치하였으니 아래 코드로 서버를 실행시켜 잘 동작하는지 확인해보겠습니다. 먼저 app.js 라는 이름으로 새로운 파일을 하나 생성하겠습니다.

아래 코드를 app.js 파일에 작성해주세요! 작성하고 꼭 저장을 해야합니다.

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

app.get('/', (req, res) => res.send('Hello JY World!'))

app.listen(port, () => console.log('Server Running. . .'))

 

터미널 창에 아래 명령어로 서버를 실행시키고 정상 실행되었다는 로그 메시지를 확인합니다.

> node app.js

Postman 또는 웹 브라우저를 열어 http://localhost:3000 으로 GET 메소드 요청을 보내고 결과를 확인합니다.

정상적으로 서버가 잘 동작하고 있습니다!

 

다음 포스팅에서는 실제 DB 서버와 연결하고 DB 연결 코드를 모듈화하여 불러오는 작업을 해보도록 하겠습니다.

반응형

'Back-End > Express' 카테고리의 다른 글

[Node.js] Express + MySQL로 REST API 만들기 (2)  (2) 2021.04.02

댓글