전체 글 13

[Node.js] express 입문

1. express 프로젝트 초기 생성 및 설치 npm init (1) 이 명령을 실행하면 몇 가지 질문이 이어지고, 답한 내용에 따라 package.js 파일이 만들어짐 => entry point를 묻는 질문에는 meadowlark.js라고 답함 npm install express@4 (2) npm install express04를 실행하면 node_modules 디렉터리가 설치되고, package.json 파일이 업데이트가 됨 => node_modules 디렉터리는 언제는 npm으로 다시 생성할 수 있음 따라서 깃 저장소에 추가할 필요가 없음 (npm install 할 때마다 업데이트가 됨) #npm 설치 패키지 깃 무관 node_modules #.DS.Store(OXS) 처럼 운영체제에서 만든느 파..

Node.js 2022.09.18

[Spring Boot]ResponseEntity

ResponseEntity에 대하여 알아보기 전에 REST API에 대하여 알아보자. 아래글을 참고하였다. https://meetup.toast.com/posts/92 REST API 제대로 알고 사용하기 : NHN Cloud Meetup REST API 제대로 알고 사용하기 meetup.toast.com REST API 설계 시 가장 중요한 항목 다음 2가지 URI는 정보의 자원을 표현해야 한다. 자원에 대한 행위는 HTTP Method(GET, POST, PUT, DELETE) METHOD역할 POST POST를 통해 해당 URI를 요청하면 리소스를 생성합니다. GET GET를 통해 해당 리소스를 조회합니다. 리소스를 조회하고 해당 도큐먼트에 대한 자세한 정보를 가져온다. PUT PUT를 통해 해당 ..

Spring Boot 2021.11.28

[Spring Boot] JPQL, Repository 확장

JPQL(Java Persistence Query Langauge) JPQL(Java Persistence Query Language)는 JPA(Java Persistence API)의 일부로 정의된 플랫폼에 독립적인 객체지행 쿼리 언어이다. JPQL은 관계형 데이터베이스의 엔티티에 대한 쿼리를 만드는데 사용한다. SQL : 데이터베이스 테이블을 대상으로 쿼리함 JPQL : 엔티티 객체를 대상으로 쿼리함 @Query value안에 사용하는 구문이 JPQL이다. 객체지향쿼리이므로 테이블 대신에 엔티티 클래스를 이용하여 쿼리 결과를 조회한다. Repository 확장 Spring Data JPA의 Repository를 확장하기 위해서는 다음과 같은 단계로 처리된다. 쿼리 메서드나 @Query 등으로 처리할 ..

Spring Boot 2021.11.07

[Spring Boot] Spring Data JPA

Spring Boot에서 사용되는 Spring Data JPA에 대해서 알아보자. Spring Data JPA 쿼리 메서드 : 메서드의 이름 자체가 쿼리의 구문으로 처리되는 기능 @Query(JPQL) : SQL과 유사하게 엔티티 클래스의 정보를 이용해서 쿼리를 작성하는 기능 Querydsl : 동적쿼리 기능 대표적으로 위의 3가지 방식을 사용한다고 한다. 쿼리 메서드(Query Methods) 쿼리 메서드는 말 그대로 '메서드의 이름 자체가 질의(query)문'이다. 쿼리 메서드는 주로 'findBy나 getBy...'로 시작하고 이후에 필요한 필드 조건이나 And, Or와 같은 키워드를 이용해서 메서드의 이름 자체로 질의 조건을 만들어낸다. 쿼리 메서드 관련 키워드는 주로 SQL에서 사용되는 키워드와..

Spring Boot 2021.10.23

[Spring Boot] RedirectAttributes, FlashAttributes

Spring Boot를 사용하기 시작하면서 페이지 redirect할 때 RedirectAttributes를 처음 사용해보게 되었는데 원래 자주 사용하던 Model 클래스와 어떤 차이점이 있는지 궁금하여 글을 쓰게 되었다. Model Spring에서는 Redirect시 URI에 쿼리 파라미터가 전달됨 Spring Boot부터 기본적으로 Redirect시 URI에 쿼리 파라미터가 전달되지 않음 application.properties 설정을 통해 쿼리 파라미터 전달 가능 Primitive type(기본자료형)의 데이터를 URL의 쿼리 파라미터로 전송 Model 클래스 사용 Redirect 코드 예제 @GetMapping("/redirectModelTest") public String redirectModel..

Spring Boot 2021.10.01

[Spring Boot] Entity VS DTO

Spring Boot JPA에서 사용하는 Entity와 DTO의 차이점을 설명한다. 1. Entity Entity 클래스는 실제 DataBase의 테이블과 1 : 1로 매핑 되는 클래스로, DB의 테이블내에 존재하는 컬럼만을 속성(필드)으로 가져야 한다. Entity 클래스는 상속을 받거나 구현체여서는 안되며, 테이블내에 존재하지 않는 컬럼을 가져서도 안된다. Entity 클래스에 대하여 설명해보자면 Entity는 마치 데이터베이스의 테이블과 같은 구조로 작성하는 클래스이다. 엔티티 클래스는 Spring Data JPA에서 반드시 @Entity라는 어노테이션을 추가해야만하고, @Entity는 해당 클래스가 엔티티를 위한 클래스이며, 해당 클래스의 인스턴스들이 JPA로 관리되는 엔티티 객체라는 것을 의미한..

Spring Boot 2021.09.25

[JAVA] Stream 정리

스트림 사용 이유는? -> JAVA8에서 추가한 스트림은 람다를 활용할 수 있는 기술중 하나이다. JAVA8 이전에는 배열 또는 컬렉션 인스턴스를 다루는 방법을 for또는 foreach문을 돌면서 요소를 하나씩 꺼내서 다루는 작업을 하였다. 간단한 경우라면 상관이 없지만 로직이 복잡해질수록 코드의 양이 많아져 여러 로직과 섞이게 되고 메소드를 나눌 경우 루프를 어러번 도는 경우가 발생하기 때문에 효율적인 스트림을 사용하게 됨 스트림은 배열 또는 컬렉션 인스턴스에 함수 여러개를 조합해서 원하는 결과를 필터링하여 가공된 결과를 얻을 수 있다. 간단하게 병렬처리가 가능하고, 하나의 작업을 둘 이상의 작업으로 잘게 나눠서 동시에 진행하는 것이 가능하다. 예를 들어서 int 형태의 배열을 가지고 중복을 제거한 후..

Java 2021.09.20

[Node.js ] 기본 서버 연동

1. node.server.js 저장 //모듈을 추출합니다. var http = require('http'); //웹 서버를 만들고 실행합니다. http.createServer(function (request, response){ response.writeHead(200, {'Content-Type': 'text/html'}); response.end('Hello World...!'); }).listen(52273, function(){ console.log('Server running at http://127.0.0.1:52273/'); }) 2. 터미널에 node node.server.js 입력 3. 브라우저에 http://127.0.0.1:52273 접속 node.js는 하나의 스레드를 이용하여 이..

Node.js 2020.08.13