Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Archives
Today
Total
관리 메뉴

사고쳤어요

Express 구조와 Express application generator 본문

웹 풀스택

Express 구조와 Express application generator

kevinmj12 2025. 2. 14. 13:58

Express의 공식 문서에서 가이드를 살펴보면 다음과 같은 "Express application generator"를 찾을 수 있다.

https://expressjs.com/en/starter/generator.html

Express application generator를 사용하면 애플리케이션 스켈레톤을 빠르게 생성할 수 있고,

npx 커맨드를 통해 애플리케이션을 실행할 수 있다고 한다.

 

npm install -g express-generator 명령을 통해 설치하고, express 명령을 사용해보자.

 

자동으로 폴더와 파일들이 만들어지고, 애플리케이션 스켈레톤이 맞춰진 것을 볼 수 있다.

먼저 bin 폴더 밑에 www라는 파일이 있다.

파일의 내용을 훑어보면 여러가지 역할을 하고 있다는 것을 알 수 있다.

var port = normalizePort(process.env.PORT || '3000');
app.set('port', port);

포트 번호를 세팅하기도 하고,

var server = http.createServer(app);

HTTP 서버를 만들며,

server.listen(port);
server.on('error', onError);
server.on('listening', onListening);

서버에 에러가 발생한 경우, 접속에 성공한 경우 등의 여러가지를 처리하고 있다.

즉, 위 www 덕분에 우리는 편리하게 기본 설정만 진행해주어도 웹 서버를 열 수 있다.

 

다음으로 app.js를 살펴보자.

app.js에도 많은 내용이 담겨 있다.

 

app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

프로젝트에 대한 추가 세팅을 진행하고,

app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));

미들웨어들과 연결을 진행하고,

module.exports = app;

설정한 모듈을 사용할 수 있도록 exports까지 진행한다.

 

다음은 rolutes 폴더의 index.js이다.

분기 처리를 진행하는 route에 맞는 역할의 코드가 담겨있는 것을 볼 수 있다.

 

그리고 마지막으로 터미널에서 npm start 명령어를 통해 실행을 해주면

잘 실행이 되는 모습을 볼 수 있다.

 

이렇게 express 명령을 통해 기본적인 스켈레톤을 잡아주기 때문에 아주 편리하게 작업을 진행할 수 있다.