분류 전체보기 (55) 썸네일형 리스트형 [Node.js] CRUD 구현하기 (Feat.ToDo 리스트) 1. 데이터 추가 db.collection("post").insertOne({ title: req.body.title, date: req.body.date }, function (error, result) { console.log("할일 저장완료"); }); 데이터 추가는 insertOne({추가할데이터}, 콜백함수)을 이용한다. 주의할 점은 NoSQL은 모든 데이터를 Object 형태로 저장해야한다. 좋은점은 내가 아무렇게나 저장해도 문자면 string, 숫자면 int 이런식으로 알아서 저장이되기 때문에 schema를 신경쓸 필요가 없다. 근데 이게 단점이 될 수도 있다. (또 단점으로는 JOIN 연산을 수행하기 어렵다는 점이 있다.) _id는 고유번호로 자동으로 부여된다. 내가 직접 부여할수도 있다... [Node.js] Node로 DB 연결하기 DB는 크게 1. SQL언어를 사용하는 관계형 데이터베이스와 2. NoSQL 데이터베이스가 있다. 둘은 확실한 장단점이 있다. 정규화된 데이터와 안정성이 필요하다면 관계형 데이터베이스를 사용합니다. 금융서비스를 만든다, 은행 전산시스템을 만든다면 당연히 안정적인 관계형이 최고입니다. 하지만 일초에 수백만개의 데이터 입출력 요청이 들어오는 SNS 서비스를 만들 때, 뭔가 서비스의 변경사항이 잦아서 쉽고 유연하게 데이터를 저장하고 싶으면 NoSQL을 사용합니다. 실제로 Facebook은 이런 대량의 데이터를 저장하기 위해 HBase 데이터베이스를 이용해 분산 저장합니다. NoSQl은 Object 자료형으로 입출력 가능 데이터 입출력에만 신경쓸 수 있음 가장 유명한게 MongoDB -> MongoDB Atla.. 서버만들 때는 REST하게 API를 짜는게 좋다!(RESTful API) 1. 먼저 API란? API란, Application rogramming Interface, 인터넷과 통신할 때 통신 규약... 이건 알필요 없고!! 웹개발에서 API란, 서버와 클라이언트간의 소통방법 == 어떻게 해야 서버와 통신할 수 있을까? 이거만 알면된다. app.get("/write", function (req, res) { res.sendFile(__dirname + "/write.html"); }); 어떤 사람이 /write로 접속했을 때 글 쓸 수 있는 페이지를 갖다준다 => 이게 바로 API 이걸 REST하게 짜면 보기도 좋고 관리도 좋은 API를 만들 수 있다. 2. 그렇다면 REST는? HTTP 요청 시스템(GET, POST, PUT, DELETE) REST원칙에 의해서 쓰면 인터넷 .. [Node.js] 노드 웹프로젝트 시작하기 1. Node 웹프로젝트 시작하기 node 최신버전 설치 후, 작업 폴더에서 npm init으로 프로젝트 설정을 한다. npm install express로 express 라이브러리를 설치해준다. const express = require("express"); const app = express(); app.listen(8080, function () { console.log("listening on 8080..."); }); 위에 코드처럼 서버를 만든다. app.listen함수에는 사용할 포트 번호와 그 포트에 접속했을 때 실행될 코드를 적는다. 2. 라우팅 하기 2.1 단순한 문구를 브라우저에 출력할 때 res.send() 사용 app.get("/pet", function (req, res) { re.. RESTful API란? RESTful API REST하게 클라이언트랑 서버 간에 데이터를 주고받는 방식? REST는 Representational State Transfer의 약자로 웹의 장점을 최대한 활용할 수 있는 아키텍처로써 발표되었다. REST의 구성 REST API 는 다음과 같은 구성으로 이루어져 있습니다. 자원(Resource) - URI 행위(Verb) - HTTP METHOD 표현(Representations) uri? 더보기 아래 그림에서 볼 수 있듯이 URI가 URL의 상위 개념이다. URI는 URL을 포함하고 있다. URI는 Uniform Resource Identifier URL은 Uniform Resource Locator URN은 Uniform Resource Name 의 약자이다. URI : 통합 .. MVC 패턴이란? MVC 패턴 MVC 패턴은 디자인 패턴 중 하나입니다. 디자인 패턴이란 개발 중에 발생했던 문제점들을 정리해서 상황에 따라 간편하게 적용하여 쓸 수 있도록 만들어 놓은 규약을 말합니다. MVC는 Model, View, Controller 의 약자입니다. 하나의 애플리케이션을 구성할 때 그 구성 요소를 세 가지의 역할로 구분한 패턴입니다. 위의 그림처럼 사용자가 Controller 를 조작하면 Controller 는 Model 을 통해서 데이터를 가져오고 그 정보를 바탕으로 시각적인 표현을 담당하는 View 를 제어해서 사용자에게 전달합니다. 위 그림은 사용사에 의한 로직을 설명하기 위함이고 보다 더 MVC 패턴과 어울리는 그림은 아래와 같습니다. Controller 가 View 에도 영향을 미치는 부분이.. [JPA] JPA 기본 사용 문법 @Entity @Entity 어노테이션은 데이터베이스의 테이블과 일대일로 매칭 되는 객체 단위이며 Entity 객체의 인스턴스 하나가 테이블에서 하나의 레코드 값을 의미합니다. 그래서 객체의 인스턴스를 구분하기 위한 유일한 키값을 가지는데 이것은 테이블 상의 Primary Key 와 같은 의미를 가지며 @Id 어노테이션으로 표기됩니다. 이때 명시적으로 @Entity 의 name 속성을 이용해 데이터베이스 상의 실제 테이블 명칭을 지정하지 않는다면 Entity 클래스의 이름 그대로 CamelCase 를 유지한 채 테이블이 생성되기 때문에 테이블 이름을 명시적으로 작성하는 것이 관례입니다. 왜냐하면 데이터베이스 상에서는 UnderScore 가 원칙이기 때문입니다. @Entity public class Org.. [SpringBoot] 애플리케이션 재시작없이 수정 반영하는 방법 : Devtools 스프링부트에서 애플리케이션 재시작없이 html 수정 반영하는 방법 html 에서 띄어쓰기 하나만 고쳐도 재시작 해야하기 때문에 여간 불편한게 아니다. 재시작하는 시간이 꽤 걸리기 때문에 작은 수정 하나에 드는 비용이 굉장히 크게 느껴진다. 이러한 불편함을 해결해 줄 Devtool 설정 방법을 정리한다. devtools는 Spring boot에서 제공하는 개발 편의를 위한 모듈이다. Devtools 설정 방법 (gradle) 1. Dependency에 devtools를 추가한다. 2. 재시작 없이 Recompile 또는 Ctrl+Shift+F9 로 수정한 파일만 리컴파일한다. 이전 1 2 3 4 5 6 7 다음