분류 전체보기
[NodeJS] 노드 리액트 기초 - BodyParser를 이용한 회원가입 기능(with.PostMan)
만약 클라이언트에서 정보를 서버에 보내주면 서버에서는 그 정보를 받아주어야 합니다. 그것을 받을때 BodyParser라는 디펜던시가 필요합니다! 바디파서를 이용해서 클라이언트에서 보내주는 자료(이름, 이메일, 비밀번호)등을 받을수가 있습니다. npm install body-parser --save 바디파서 디펜던시를 다운받기 위해서 필요한 명령어입니다. 모듈이 잘 설치가 되었습니다. 지금 현재 로그인이나 회원가입을 할때 클라이언트를 만들어 놓은 것이 없기 때문에 데이터를 클라이언트에 보내줄수가 없어 해당 기능을 대처하기위해 Postman을 사용할 예정입니다. https://www.postman.com/ Postman API Platform | Sign Up for Free Postman is an API..
ReferenceError: bodyParser is not defined
ReferenceError: bodyParser is not defined at Object. (C:\study_nodejs_react\01_node_react_basic\index.js:8:9) at Module._compile (internal/modules/cjs/loader.js:1068:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1097:10) at Module.load (internal/modules/cjs/loader.js:933:32) at Function.Module._load (internal/modules/cjs/loader.js:774:14) at Function.executeUserEntryPoint ..
[NodeJS] 노드 리액트 기초 - MongoDB Model & Schema(몽고디비 모델, 스키마)
모델은 스키마를 감싸주는 역할을 하고 스키마는 정보들을 하나하나 지정해주는것을 의미합니다. 이해가 잘 안가실수도 있으니 코드를 통해 알아보겠습니다. const mongoose = require('mongoose'); const userSchema = mongoose.Schema({ name: { type: String, maxLength: 50, }, email: { type: String, trim: true, unique: 1, }, password: { type: String, minLength: 50, }, role: { type: Number, default: 0, }, image: String, token: { type: String, }, tokenExp: { type: Number, }, ..
MongoInvalidArgumentError: No AuthProvider for DEFAULT defined.
몽고디비와 노드를 연결하기위한 도중 또 이와 같은 에러를 만났다.. const mongoose = require('mongoose') mongoose.connect('mongodb+srv://cluster0.7sr4t.mongodb.net/myFirstDatabase') .then(() => console.log('MongoDB Connected...')) .catch(arr => console.log(arr)) 코드에 대체 무슨 문제가 있는가... MongoInvalidArgumentError: No AuthProvider for DEFAULT defined. at prepareHandshakeDocument (C:\mystudy\node_modules\mongodb\lib\cmap\connect.js..
MongoParseError: options usecreateindex, usefindanmodify are not supported
노드와 몽고디비를 연결하기 위해 작업을 다했는데 에러가 발생할 경우가 있다... const mongoose = require('mongoose') mongoose.connect('mongodb+srv://cine:cine@cluster0.7sr4t.mongodb.net/myFirstDatabase', { useNewUrlParser: true, useUnifiedTopology: true, useCreateIndex: true, useFindAnModify: false, }).then(() => console.log('MongoDB Connected...')) .catch(arr => console.log(arr)) 코드 상에 문제가 없어 보이는데 이를 실행시키면 에러가 발생한다. MongoParseEr..
[NodeJS] 노드 리액트 기초 - MongoDB 연결하기
노드에 몽고디비를 연결하는 방법에 대해서 알아보고자 합니다. https://www.mongodb.com/ MongoDB: the application data platform Get your ideas to market faster with an application data platform built on the leading modern database. MongoDB makes working with data easy. www.mongodb.com 우선 몽고디비 사이트에 접속해보겠습니다. 접속하시고 로그인을해주세요! 만약 계정이 없다면 회원가입도 해주시면 됩니다. 저는 회원가입이 되어있기 때문에 그냥 바로 로그인을 했습니다. 이제 클러스터를 만들어줘야 하는데요. Create an Organizati..
[JSP & Servlet] Connection Pool
풀이라고 뭔가가 담겨져 있는 것을 의미하는데 하면 커넥션 풀은 데이터베이스와 연결하는 것들이 담겨있는 곳이라고 생각할수 있습니다. 브라우저가 웹서버로 요청을하면 웹서버는 필요에 따라서 데이터베이스에 Access하여 데이터를 가공하여 응답하게됩니다. 하지만 이러한 방식은 단점이 존재합니다. 웹서버는 데이터베이스가 필요할때마다 데이터베이스에 매우 많은 접속을 하게 됩니다. 그러면 DB를 연결하고 핸들리하고 Close하는 과정에서 자원을 너무 많이 사용하게 되고 효율적으로 사용할수 없겠죠. 이러한 단점을 보완하기 위해 Connection객체를 미리 만들어놓고 웹서버가 데이터베이스에 접근을 할때 만들어 놓은 객체를 사용하는 것이죠. 커넥션풀은 그럼 어디에 만들어 놓을까요?? 톰켓 컨테이너에 만들어놓고 필요할때마..
[JSP & Servlet] DAO와 DTO
DAO는 Data Access Object의 약자이고 DTO는 Data Transfer Object의 약자입니다. 둘다 객체라고 할수 있습니다. 브라우저를 통해서 웹서버쪽으로 요청을 하게됩니다. 요청을 하면 웹서버는 데이터베이스가 필요한 경우 데이터베이스에 접근하여 데이터베이스에서 쿼리를 수행하고 결과값을 받아서 웹서버에서 가공을 한후에 다시 브라우저로 응답하게됩니다. 그런데 웹서버는 데이터베이스로 접속하는 기능 말고도 많은 기능을 합니다. 그중에서 데이터베이스로 접근하여 통신하는 기능을 오브젝트로 따로 만들어 둔 객체가 DAO객체입니다. 데이터베이스에서 관리하는 데이터와 자바에서 관리하는 데이터의 형식은 분명 다를 것입니다. 자바에서는 int와 같은 타입으로 숫자를 관리하지만 데이터베이스에서는 numb..
[JSP & Servlet] JDBC
JDBC란 Java DataBase Connectivity를 의미합니다! 즉 DataBase의 쿼리를 자바와 연결시키는 것인데요. 저는 이번에 JDBC를 위해 Oracle을 사용할 예정입니다! JSP이건 Servlet이건 자바를 이용하게됩니다. 이런 자바와 데이터베이스의 중간에서 브릿지 역할을 해주는것이 JDBC입니다. JDBC에서 제공해주는 API를 이용해서 자바언에에서 데이터베이스에 접근하여 데이터베이스를 관리하게 됩니다. 저는 지금 이클립스를 이용해서 코딩을 하고 있는데 이런 API를 이용하기 위해서는 이클립스에 오라클 라이브러리를 이클립스에 복사해야합니다. window - Preferences에 들어가서 Classpath Variables를 보면 우리가 실질적으로 쓰고있는 JRE라이브러리를 사용하..
[JSP & Servlet] filter를 통한 한글처리
앞서 post방식과 get방식에서의 한글처리는 코드의 중복도 많아질 뿐더러 효율이 그다지 좋지 않은 코딩방법이라고 할수있습니다. 그러면 어떤 방법으로 코딩을하면 좀더 효율적인 방법일까요?? filter를 이용하는 방법이 있습니다. 필터라는 것은 뭔가를 걸러낸다는 의미이죠. 필터에 인코딩을 넣어주게 되면 통신을 할때 Filter가 한번 걸러서 데이터를 전송을 하게 되는데 데이터가 요청되고 응답될때 인코딩되어 전송이 될수 있겠죠. 필터는 인터페이스 이기 때문에 클래스를 만들어서 구현을 해야합니다. doFilter부분이 가장 중요하다고 할수있습니다. package com.servlet.filter; import java.io.IOException; import javax.servlet.Filter; impor..