반응형

이 글의 동영상 강의

https://youtu.be/eTsgL0tPhy4

 

다음 시간부터는 NodeJS 서버개발에 대해 배울 예정입니다.

서버개발시 테스트를 위해서는 frontend 개발이 필요합니다.

이때 frontend 개발 없이 서버를 테스트 할 수 있는 tool들을 사용하게 되는데,

그 중에서 가장 많이 사용하는 Postman을 설치하고 테스트 해보겠습니다.

 

postman

Postman 설치

  • 구글에서 postman을 조회합니다.

postman

  • 첫번째 조회된 postman.com 사이트를 클릭합니다.
    첫 페이지의 Download the desktop app에서 자신의 OS에 맞춰 다운로드하고 설치를 진행합니다.

postman download

  • 설치가 완료되면 아래와 같이 postman이 실행됩니다.

postman desktop app

테스트용 Nodejs 서버 만들기

  • nodejs 프로젝트를 만들고 index.js에 다음 코드를 작성합니다.
const http = require('http');

http.createServer((request, response) => {
  response.write("<h1>NodeJS Test Server!</h1>");
  response.end();
}).listen(8080);
  • 다음 명령으로 서버를 start합니다.
node index

Postman으로 요청하기

  • postman 첫화면에서 "+" 탭을 클릭해서 새로운 요청을 만듭니다.

new request

  • "http://localhost:8080"으로 요청을 작성하고 Send 버튼을 클릭합니다.
    body에 아래와 같이 결과값이 나오면 정상적으로 요청이 처리된 것입니다.

  • 아래 Response Body 에서 "Preview" 탭을 클릭하면 브라우저의 결과를 볼 수 있습니다.

이상으로 postman을 이용해서 nodejs의 서버를 테스트하는 방법을 확인해 보았습니다.

 

다음 시간에는 nodejs의 http에 대해 자세히 알아보고,

테스트를 할때 postman의 다양한 사용법에 대해서도 알아보도록 하겠습니다.

 

반응형
반응형

nodejs와 mysql을 연동하는 법을 알아보겠습니다.

 

이글의 동영상 강의는 아래 링크를 클릭해주세요.

https://youtu.be/QssKt2efX40

 

MySQL Data 준비

  • Dababase 정보는 다음과 같습니다.
    • Schema : test
    • 사용자명 : test
    • 패스워드 : test
    • 테이블명 : user
  • 생성 쿼리는 다음과 같습니다.
# 스키마 생성
CREATE SCHEMA test;

# 사용자 생성 및 권한 추가
CREATE USER 'test'@'localhost' identified with mysql_native_password by 'test';
GRANT ALL PRIVILEGES ON test.* TO 'test'@'localhost';
flush privileges;

# 테이블 생성
CREATE TABLE IF NOT EXISTS `test`.`user` (
  `id` INT NOT NULL AUTO_INCREMENT,
  `userid` VARCHAR(50) NULL,
  `username` VARCHAR(50) NULL,
  PRIMARY KEY (`id`))
ENGINE = InnoDB;

# 테스트 데이터 입력
insert into test.user(userid, username) values ('codegear', '코드기어');
insert into test.user(userid, username) values ('ironman', '아이언맨');
insert into test.user(userid, username) values ('spiderman', '스파이더맨');

MySQL 설치와 스키마, 사용자, 테이블 생성은 아래 글을 참고하세요.

 

MySQL 설치하기

Windows에 MySQL을 설치하는 방법입니다. 이 글의 동영상 강의입니다. https://youtu.be/yZtub4AbbAo mysql download 구글에서 mysql download for windows로 검색합니다. 검색 결과창에서 "Download MySQL Comm..

codegear.tistory.com

 

MySQL-Schema, User, Table 생성하기

이 글의 동영상 강의입니다. https://youtu.be/hOOiqk8Z1gQ MySQL Workbench를 이용하여 가장 기본적인 Schema와 User를 생성하고, User에게 Schema의 권한을 주는법과, Schema에 Table을 생성하는 법을 알아보겠..

codegear.tistory.com

  • workbench를 실행하고 다음 쿼리를 실행합니다.
select * from user;
  • 실행 결과는 다음과 같습니다.

 

Nodejs 프로젝트 만들기

  • 프로젝트 폴더를 생성합니다.
  • VSCode를 실행하고 메뉴-폴더열기에서 프로젝트 폴더를 선택합니다.

  • 메뉴-터미널을 실행하고 다음 명령을 실행합니다.
npm init -y

 

MySQL 패키지 설치

  • www.npmjs.com에서 mysql을 검색합니다.

npmjs.com

  • 검색된 결과중 mysql exact match를 선택합니다.
  • 설치 방법과 사용법을 확인합니다.

npm install mysql

 

introduction

  • npm i mysql을 실행합니다.

npm i mysql

 

NodeJS + MySQL 연동 하기

  • index.js 파일을 만들고 다음 indroduction의 내용을 복사하여 붙여넣습니다.
var mysql      = require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'test',
  password : 'test',
  database : 'test'
});
 
connection.connect();
 
connection.query('SELECT * from USER', function (error, results, fields) {
  if (error) throw error;
  console.log('users: ', results);
});
 
connection.end();
  • 터미널에서 다음 명령으로 프로젝트를 실행합니다.
node index
  • 실행 결과는 다음과 같습니다.

 

반응형
반응형

이 글의 동영상 강의입니다.

https://youtu.be/sD7-xrF7XR4

 
NodeJS 프로젝트를 진행하다 보면 다음과 같은 상황들이 발생합니다.
A프로젝트는 노드 버전 12.13.0을 사용한다.
B프로젝트는 노드 버전 16.13.0을 사용한다.

 

즉, NodeJS 버전을 바꿔가면서 작업을 해야 하는 상황이 생기는 것입니다.

프로젝트를 변경할 때마다 NodeJS를 매번 새롭게 설치하기는 어렵습니다.

이때 NodeJS 버전을 쉽게 변경할 수 있는 툴이 NVM입니다.

 

NVM 설치하기

검색 사이트에서 NVM 또는 NVM windows를 검색하여 설치합니다.

https://github.com/coreybutler/nvm-windows

 

GitHub - coreybutler/nvm-windows: A node.js version management utility for Windows. Ironically written in Go.

A node.js version management utility for Windows. Ironically written in Go. - GitHub - coreybutler/nvm-windows: A node.js version management utility for Windows. Ironically written in Go.

github.com

 

 

설치가 완료되면 cmd 또는 powershell에서 다음 명령을 실행할 수 있습니다.

  • 설치된 NodeJS 목록 확인하기
nvm ls

  • nvm install을 사용해서 새로운 버전의 NodeJS 추가할 수 있습니다.
    nvm install {버전번호} (nodejs의 특정 버전 설치)
    nvm install latest (최신버전의 nodejs 설치)
    nvm install lts (nodejs LTS 버전 설치)
nvm install 12.13.0
nvm install 16.13.0
nvm install latest
nvm install lts
  • NodeJS 버전 변경하기
nvm use 12.13.0

 

윈도우용 NVM 오류 해결 방법

윈도우용 NVM을 사용하면 "Exit 5..." 라는 오류가 종종 나옵니다.

이때 cmd나 파워쉘을 관리자 권한으로 실행해서 nvm use를 사용하시면 됩니다.

 

그래도 안될때는 다음 방법을 사용하면 오류를 해결하실 수 있습니다.

  • NVM 위치 변경하기
nvm root D:\nodejs-root\nvm
  • NVM 기본 설치 위치에서 다음 파일들을 복사해서 새로운 NVM 폴더에 넣어줍니다.
    기본 설치 위치 = C:\사용자\{사용자ID}\AppData\Roaming\nvm
elevate.cmd
elevate.vbs
  • CMD 또는 PowerShell을 관리자 권한으로 실행하고, nvm을 사용합니다.
nvm use 12.13.0

 

NVM을 사용하면 NodeJS의 버전을 손쉽게 변경하여 사용할 수 있습니다.

 

반응형
반응형

이 글의 동영상 강의입니다.

https://youtu.be/oHXHOzg9oxQ

 

이 글은 module에 대해 잘 정리되어 있는 아래 사이트를 참고해서 작성되었습니다.

nodejs의 module은 굉장히 중요한 개념입니다.

개발시에 module을 모르면 개발이 불가능하므로, 개념을 잘 이해하여야 합니다.

 

nodejs는 모듈 단위로 기능을 분리할 수 있습니다.

또한 분리된 기능을 조립하여 사용이 가능합니다.

 

nodejs module의 특징

nodejs의 module은

  • 업계표준인 CommonJS의 module 방식을 따르고 있습니다.
  • 파일과 1:1 대응 관계를 갖습니다.
  • 별도 scope을 갖기 때문에 전역 변수의 중복이 발생하지 않습니다.
  • module.exports 또는 exports를 통해 외부로 공개할 수 있습니다.
  • module.exports = exports 와 동일합니다.
  • require를 사용하여 외부에서 module을 사용 할 수 있습니다.
  • 변수(variable), 객체(object), 함수(function), 폴더(folder)를 module로 만들 수 있습니다.

변수를 사용한 예제

  • constants.js
module.exports = { 
    SEND_MAIN_PING: 'send_main_ping', 
};
 
  • index.js
const { SEND_MAIN_PING } =require('./constants')

console.log(SEND_MAIN_PING);

함수를 사용한 예제

  • sum.js
var sum = function(a,b){
    return a + ' + ' + b + ' = ' + a+b;
}

module.exports = sum;
  • index.js
const sum = require('./sum');

console.log(sum(1,10));

폴더를 사용한 예제

  • 폴더 구조는 다음과 같습니다.

폴더구조

  • module/index.js
module.exports = {
    sum: require('./sum'),
    minus: require('./minus')
}
  • index.js
const myModule = require('./module');

console.log(myModule.sum(1,10));

 

Core Module

nodejs에 기본적으로 포함되어 있는 module을 core module이라고 합니다.

core module은 require를 이용해 바로 사용할 수 있습니다.

const http = require('http');

 

외부 Module (NPM)

nodejs는 npm으로 설치한 외부 모듈을 사용할 수 있습니다.

따라서 npmjs.com에 배포되어 있는 모든 모듈을 자유롭게 이용할 수 있다는 장점이 있습니다.

  • npmjs.com에서 검색
    다음은 npmjs.com에서 nodejs의 서버 개발을 쉽게 해주는 express를 검색한 내용입니다.
    붉은색 박스에 보시면 설치법이 나와 있습니다.

  • npm으로 설치한 모듈도 동일하게 require를 통해 사용할 수 있습니다.
const express= require('express');

 

이상으로 nodejs의 module 사용법에 대해 알아보았습니다.

반응형
반응형

이 글의 동영상 강의

https://youtu.be/ZKSEA7DZ5x8

 

Nodejs를 설치하고 나면,
Nodejs를 실행할 수 있는 여러가지 방법이 있습니다.

 

1. Command Line에서 실행하기

2. Browser 개발자 도구에서 실행하기

3. 파일을 만들어 실행하기

 

하나씩 실행하는 법을 알아보겠습니다.

1. Command Line에서 실행하기

  • 윈도우 검색창에 CMD를 입력하고 실행합니다.

명령 프롬프트 실행\

  • 명령프롬프트에서 node를 입력 후 실행(Enter)합니다.

node 실행

  • 다음 내용을 입력합니다.
var msg = "Hello World!!!"
console.log(msg)
  • 실행 결과는 다음과 같습니다.

실행결과

2. Browser 개발자 도구에서 실행하기

  • 크롬브라우저를 실행합니다.
  • F12키를 눌러 개발자 도구를 실행합니다.
  • 콘솔 탭을 클릭하고 다음 내용을 입력합니다.
var msg = "Hello World!!!"
console.log(msg)
  • 실행 결과는 다음과 같습니다.

크롬 브라우저 개발자 도구

3. Javascript 파일을 만들어 실행하기

  • 앞에서 설명한 2가지 방법은 간단한 입력은 가능하지만, 복잡한 프로그램은 구현하기 어렵습니다.
  • Nodejs로 제대로 된 프로그램을 만들려면 Javascript 파일을 만들어 실행해야 합니다.
  • 편집기를 이용해 test.js 파일을 만듭니다. 저는 Visual Studio Code(VSCode)를 이용했습니다.
  • test.js에 다음 내용을 입력합니다.
function plus(a,b) {
    return a + b;
}

function minus(a,b) {
    return a - b;
}

console.log(plus(2,3));
console.log(minus(10,6));
  • VSCode의 메뉴에서 터미널-새터미널을 실행합니다.
  • node test를 입력하고 실행합니다.
  • 실행 결과는 다음과 같습니다.

이상으로 Nodejs를 실행하는 방법 3가지를 알아보았습니다.

 

반응형

+ Recent posts