mysql 모듈은 market Server가 MySQL server와 상호작용할 수 있게 한다
const mysql = require('mysql');
require('dotenv').config();
const database = mysql.createConnection({
host: 'localhost',
user: 'root',
password: process.env.DATABASE_SPRINT_PASSWORD,
database: 'market'
})
database.connect((err) => {
if (err) throw err;
})
module.exports = database;
dotenv는 .env 파일에서 process.env로 환경 변수를 로드하는 zero-dependency module이다
env 파일에 환경변수로 password 설정 해놓은 것을 dotenv로 로드 할 수 있다
require('dotenv').config(); password: process.env.DATABASE_SPRINT_PASSWORD
1. 데어베이스와 연결
const mysql = require('mysql'); require('dotenv').config(); const database = mysql.createConnection({ host: 'localhost', user: 'root', password: process.env.DATABASE_SPRINT_PASSWORD, database: 'market' }) database.connect((err) => { if (err) throw err; })
2. query() 메소드로 데이터베이스의 데이터 가져오기
module.exports = { items: { get: (req, res) => { const queryStrting = `select * from items` db.query(queryStrting, (err, result) => { if (err) { res.status(500).send('server Error') } else ( res.status(200).send(result) ) }) }, }
const models = require('../models')
const db = require('../db')
const mysql = require('mysql');
require('dotenv').config();
const database = mysql.createConnection({
host: 'localhost',
user: 'root',
password: process.env.DATABASE_SPRINT_PASSWORD,
database: 'market'
})
database.connect((err) => {
if (err) throw err;
})
module.exports = {
items: {
get: (req, res) => {
// get 요청시 mudels로 넘어 감다
// models의 item으로 이동
const queryStrting = `select * from items`
database.query(queryStrting, (err, result) => {
if (err) {
res.status(500).send('server Error')
} else (
res.status(200).send(result)
)
})
},
}
orders 까지 query() 메소드로 구현 후
controller 와 model로 분기 처리 후 마무리