학습 - Windows 환경에서 MVC 구조 이해 및 학습

Node.js 설치
확장자 설치:
[Nod.js]
0.터미널 실행
1.터미널 위치 조정
cd [작업할 폴더 경로]
Ex) cd C:\Users\Administrator\Desktop\SeSAC\00_MVC 학습
2.패키지 초기화 및 설치
[Node.js]
1. 기본값 : npm init -y
="package.json"게 생성된다.
3. 이름지정 : npm install [패키지 이름]
3. package-lock.json 생성
npm install ejs
4.Express/의존성 설치(웹 구현 준비)
npm install express --save
이거 있어야함.
'''
express
'''
5.[.gitignore] 파일 작성(package-lock.json이 너무 커서 따로 분류해야함)
꼭 안에
'''
/node_modules
package-lock.json
'''
를 적어 넣어야 사용 할 수 있다.
my-mvc-app/
├── controller/
│ └── Cuser.js
├── model/
│ └── User.js
├── routes/
│ └── user.js
├── views/
│ └── index.ejs
├── app.js
└── package.jsonapp.js (앱 초기화 및 기본 설정)
const express = require('express');
const app = express();
const userRouter = require('./routes/user');
app.set('view engine', 'ejs');
app.set('views', './views');
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.use('/user', userRouter);
app.listen(3000, () => {
console.log('Server is running on http://localhost:3000');
});
routes/user.js (라우팅 설정)
const express = require('express');
const router = express.Router();
const userController = require('../controller/Cuser');
router.get('/', userController.getUsers);
router.post('/', userController.createUser);
module.exports = router;
controller/Cuser.js (컨트롤러 정의)
const User = require('../model/User');
exports.getUsers = (req, res) => {
const users = User.getAll();
res.render('index', { users });
};
exports.createUser = (req, res) => {
const newUser = req.body;
User.add(newUser);
res.redirect('/user');
};
model/User.js (데이터 관리)
let users = [];
exports.getAll = () => users;
exports.add = (user) => {
users.push(user);
};
views/index.ejs (화면 구성)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>User List</title>
</head>
<body>
<h1>User List</h1>
<ul>
<% users.forEach(user => { %>
<li><%= user.name %></li>
<% }); %>
</ul>
<form action="/user" method="POST">
<input type="text" name="name" placeholder="Enter user name">
<button type="submit">Add User</button>
</form>
</body>
</html>
express.urlencoded를 사용하여 POST 요청 처리 코드를 입력하세요