이것을 작성해두는 이유는 앞으로 백엔드 MVC 모델을 사용할 때 참고하라고 작성해두는 것임.
최초 작성한 다음에 제출한 다음에 제출한 코드를 작성자가 다시 리뷰해보는 것도 의미가 있으리라.
분명 작성할 때에는 보이지 않던 것이 나중에는 보일 수도 있기에...
const express = require('express');
const indexRouter = require('./routes');
const cors = require('cors');
const app = express();
const port = 9737;
app.use(cors());
app.use(express.urlencoded({ extended: true }));
app.use(express.json());
app.use('/', indexRouter);
module.exports = app.listen(port, () => {
console.log(`Server is starting on ${port}`);
});
// index.js
const express = require('express')
const router = express.Router()
const itemsRouter = require('./items')
router.use('/items', itemsRouter)
module.exports = router
// items.js
const router = require('express').Router();
const controller = require('./../controllers');
router.post('/', controller.items.post);
router.get('/:id', controller.items.get);
router.get('/', controller.items.get_all);
router.get('/:id/detailed', controller.items.get_detailed);
router.put('/:id', controller.items.put);
router.put('/:id/detailed', controller.items.put_detailed);
router.delete('/:id', controller.items.delete);
module.exports = router;
// config/config.js
const dotenv = require('dotenv');
dotenv.config();
const config = {
development: {
host: 'localhost',
user: 'root',
password: process.env.DATABASE_PASSWORD,
database: 'bejewel',
},
};
module.exports = config;
// database/index.js
const mysql = require('mysql');
const config = require('../config/config');
const con = mysql.createConnection(config.development);
con.connect((err) => {
if (err) throw err;
});
module.exports = con;
// schema.sql
CREATE TABLE items (
id INT,
name varchar(255),
description varchar(255),
price INT,
inventory INT,
image varchar(255),
category varchar(255),
material_base varchar(80),
material_etc varchar(80),
material_plated varchar(80),
material_stone varchar(80),
shape varchar(80),
size varchar(80),
weight varchar(80),
PRIMARY KEY (id)
)