[파트4] Node.js에 db연동 준비(npm 사용)
1.npm이란?
pm은 Node Packaged Manager의 약자
이름처럼 npm은 Node.js로 만들어진 모듈을 웹에서 받아서 설치하고 관리해주는 프로그램
2.npm 사용법(명령어)
대표 2개만 나머지 명령어는 필요에 따라 구글링.
npm init | package.json 생성 |
npm install 'moduleName' npm i ' moduleName' |
--save or -S : dependencies에 추가 --save-dev or -D : devDependencies에 추가 -g : global 패키지에 추가 |
3.package.json이란?
package.json이란 현재 프로젝트에 관한 정보와 패키지 매니저(npm, yarn)을 통해 설치한 모듈들의 의존성을 관리하는 파일이다.
* 기록된 package.json 파일을 이용하여 다른 컴퓨터에서 node 모듈을 일괄적으로 설치 할 수 있다.(* npm install)
4.Node.js DB연동
npm으로 mysql 설치
npm install mysql --save
DB커넥션 파일 만들기(mariadb.js)
const mariadb = require('mysql');
const conn = mariadb.createConnection(
{
host : 'localhost',
port : 3307,
user : 'root',
password : 'root',
database:'Tennis'
}
);
module.exports = conn
핸들러에서 DB연동 파일 불러오기(requestHander.js)
//DB불러오기
const mariadb = require('./database/connect/mariadb')
불러온 DB에서 삽입 쿼리 날리기(requestHander.js -> order함수)
function order(response,productId){
response.writeHead(200,{'Content-Type' : 'text/html'} )
mariadb.query("INSERT INTO orderlist VALUES (" + productId +",'" + new Date().toLocaleDateString() + "');",function(err,rows) {
if (err) {
console.error("Database error: ", err);
response.end("Database error.");
return;
} else{
console.log(rows);
}
orderlist(response)
})
}
불러온 DB에서 조회 쿼리 날리고 html 화면에 뿌리기(requestHander.js -> orderlist함수)
function orderlist(response){
//해더값 있는지 확인.
if (!response.headersSent) {
response.writeHead(200, {'Content-Type': 'text/html'});
}
mariadb.query("select * from orderlist",function(err,rows){
response.write(orderlist_view);
rows.forEach(element => {
response.write("<tr>"
+"<td>" + element.product_id + "</td>"
+"<td>" + element.order_date + "</td>"
+"</tr>"
);
});
//console.log(err)
response.write("</table>")
response.end();
})
5.출처
https://m.blog.naver.com/magnking/220961896609
[JavaScript] npm이란?
npm이란 무엇일까?npm은 Node Packaged Manager의 약자입니다. 무슨 의미인지 한 번 추측을 해볼까요?&n...
blog.naver.com
https://velog.io/@archivvonjang/npm-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%A0%95%EB%A6%AC
npm 명령어 정리
npm 명령어 정리 |npm + | 내용| 기타| |---|---|---| |npm init|package.json 생성| |npm help|명령어를 모를 때, 역할, 옵션 등을 알 수 있다.| |npm 명령어 help npm install help|해당 명령어에 대해 알고 싶을 때|| |npm in
velog.io
https://velog.io/@dongjun187/package.json-nodemodules-package-lock.json-%EB%8A%94-%EB%AD%98%EA%B9%8C
package.json, node_modules, package-lock.json 는 뭘까?
npm(node package manager)은 노드 패키지(modules)를 관리하기 위한 매니저 시스템으로 다양한 패키지들을 설치, 업데이트, 삭제하는데 도움을 주는 툴이라고 생각할 수 있다.노드의 정의는 크게 두가지
velog.io