Node.js (55) 썸네일형 리스트형 8-4 mongojs 모듈을 이용한 node.js 예제 8-3장에서 mongodb 의 기초 쿼리를 다뤄봤습니다. 이번에는 node.js 에서 mongojs 모듈을 이용하여 mongodb 의 데이터를 컨트롤 하는 예제 입니다. 아래의 예제들은 묶어서 파일로 올려드립니다. (mongojs 가 설치 되있지 않으면 실행이 안됩니다.) 1. 먼저 mongojs 모듈을 설치 해야합니다. 당연히 npm 으로 설치해야 겠지요? sudo npm -g nomgojs 제가 설치한 버전은 0.10.1 버전이군요. 2. 첫번째 예제는 insert 입니다. 소스를 보시면 첫번째 줄의 모듈을 불러오는 부분의 connect 의 파라미터를 보시면 member 라는 컬렉션의 info 라는 테이블을 사용해라! 라는 의미가 됩니다. 해당 부분의 데이터를 바꿔서 원하는 컬렉션과 테이블을 설정하시.. 8-3 mongodb 기초 쿼리 mongodb 는 기존 rdb와는 구조부터가 다릅니다. 데이블(mongodb 에서는 컬렉션이라 부릅니다만 테이블로 통용하겠습니다.) 의 foreign key 가 없기 때문에 테이블간의 join 이 어려우며 비정형테이블이기 때문에 한테이블내의 데이터 속성이 다를수 있습니다. 또한 쿼리문도 독특하지요. 쿼리문을 보면 오히려 DB 문법이 아닌 javascript 인거 같은 느낌마져 듭니다. 하지만 rdb에서의 백업/리커버리, archive 백업 , 파티션테이블등을 신경쓰지 않기 때문에 개인적으로 배우기엔 더욱 쉬운거 같습니다. 서론이 길었네요! 이전 장은 mongodb 의 저장, 업데이트 , 삭제 , 테이블 삭제등을 알아보겠습니다. 1. 먼저 몽고디비로 접속합니다. 커맨드 창에 mongo 를 입력하면 몽고비디.. 8-2 windows 에 mongodb 설치 이번 장은 windows 에 mongodb 를 설치하는 과정입니다. 1. 먼저 설치 파일을 받아야 합니다. http://mongodb.org 에 접속한후 Downloads 에 windows 버전을 클릭하여 다운 받습니다. 2. 압축파일을 c:\ 에 풀어줍니다. 전 c:\mongodb 폴더에 압축을 풀었습니다. 새로운 폴더로 data 를 생성해 줍니다. 금방 만든 data에 들어가서 db 라는 새로운 폴더를 생성해 줍니다. 완성된 구조는 c:\mongodb\bin\실행파일들 \data\db 이런 구조가 되어야 합니다. 3. 커맨드창으르 하나 실행 시킵니다. (ctrl+r ->cmd) 커맨드창에서 폴더를 푼 폴더로 이동합니다. (cd c:\mongodb\bin) 다음의 명령어를 실행합니다. >mongod.e.. 8-1 ubuntu에 mongodb 설치 웹싸이트를 제작하기 전! DB 가 필요합니다. 저의 경우 ubuntu 에서 개발하기 때문에 일단 os 는 ubuntu! 거기다가 node.js 와 정말 잘 맞는 DB 는 mongodb!! 몽고DB(MongoDB←HUMONGOUS)는 크로스 플랫폼 도큐먼트 지향 데이터베이스 시스템이다. NoSQL 데이터베이스로 분류되는 몽고DB는 JSON과 같은 동적 스키마형 문서들(몽고DB는 이러한 포맷을 BSON이라 부름)을 선호함에 따라 전통적인 테이블 기반 관계형 데이터베이스 구조의 사용을 삼간다. 이로써 특정한 종류의 애플리케이션을 더 쉽고 더 빠르게 데이터 통합을 가능케 한다. 아페로 GPL과 아파치 라이선스를 결합하여 공개된 몽고DB는 자유-오픈 소스 소프트웨어이다. 출처 : http://ko.wikipedi.. 7-3 express 에서 ejs 사용하기 express --ejs express_ejs cd express_ejsnpm install ejs는 기본적인 문법이 jsp 와 같습니다. html 태그를 그대로 사용하면서 를 써서 해당 하는 데이터를 받아서 출력합니다. index.ejs 를 보면 쉽게 알수 있습니다. Welcome to 이것을 받아서 출력하게 되는데 해당 데이터를 전해주는곳은 routes폴더 안의 index.js 입니다.(이곳이 모델이 됩니다.) 전달되는 데이터 내용을 추가해 봅시다. 먼저 routes 폴더내의 index.js 파일 입니다. name 과 출력될 데이터를 가 하였습니다. exports.index = function(req, res){ res.render('index', { title: 'Express' , name:'ui.. 7-2 express 에서 jade 를 통한 웹구현 express 의 경우 기본 템플릿은 jade 로 설정되어 있습니다. 기본인 만큼 간편하면서 강력한 템플릿 엔진인 jade!간단한 예제로 쭈욱! 살펴 보겠습니다. 1. 먼저 express 명령어를 이용하여 jade 프로젝트를 생성합니다. 아래의 명령어를 실행면 express_jade 폴더가 생성됩니다. express express_jade 2. 생성된 express_jade 폴더로 이동후 cd express_jade npm 명령어를 통해 관련 모듈을 설치해 줍니다. npm install 3. 실행! 참고로 기본 포트가 3000으로 되어 있습니다.(이경우 당연히 app.js 에서 바꿔주면 되겠지요?) http://127.0.0.1:3000 express의 구조는 다음과 같습니다. + node_moudles.. 5-2 nodemon 와 supervisor 모듈 node.js에서 콘솔작업을 한다면 js 파일 수정할때마다 ctrl+c -> node 파일명.js 노가다를 해야 합니다. 글자 하나만 고쳐도 말이죠. 하지만 nodemon 과 supervisor 모듈은 해당 js 파일을 수정만 하면 자동으로 재실행해주는 너무나 고마운 모듈들입니다. 글보단 실습이죠! 1. 먼저 설치를 합니다. $ sudo npm install -g nodemon sudo npm install -g nodemon 2. 설치된 nodemon 최신 버전은 1.0.15 입니다. 3. 실행 방법은 간단합니다. js 파일 시작시 node 파일명.js 대신 nodemon 파일명.js 를 해주면 됩니다. nodemon 파일명.js 4. 만일 해당 js파일의 파일 변경이 감지되면 자동으로 리스타트 됩니다.. 6-3 http 모듈에서의 쿠키데이터 설정 http 모듈에서의 쿠키 설정은 간단합니다. ( 예제는 서버단에서의 쿠키 설정입니다. 클라이언트 단에서는 javascript 로 하시면 됩니다.) server.js 소스 var http = require("http"); http.createServer(function(req, res) { res.writeHead(200, { 'Content-Type': 'text/html', 'Set-Cookie': [ 'name = uiandwe' , 'des = test' ] }); res.end(req.headers.cookie); }).listen(8080, function(){ console.log("server running"); }); 소스상에서의 name=uiandwe , des =test 를 셋팅하였습니.. 이전 1 2 3 4 5 6 7 다음