본문 바로가기

web/springboot5

[springboot/jpa] QueryDSL(spring-data-jpa) QueryDSL 목차 - 특징 - QueryDSL 설정 - QueryDSL 사용 - Spring Data JPA + QueryDSL - QueryDslPredicateExecutor - QueryDslReposiotrySupport - 동적쿼리 QueryDSL 특징 Querydsl의 핵심 원칙은 타입 안정성(Type safety)이다. 도메인 타입의 프로퍼티를 반영해서 생성한 쿼리 타입을 이용해서 쿼리를 작성하게 된다. 또한, 완전히 타입에 안전한 방법으로 함수/메서드 호출이 이루어진다. 또 다른 중요한 원칙은 일관성(consistency)이다. 기반 기술에 상관없이 쿼리 경로와 오퍼레이션은 모두 동일하며, Query 인터페이스는 공통의 상위 인터페이스를 갖는다. 모든 쿼리 인스턴스는 여러 차례 재사용 .. 2021. 3. 3.
[springboot] RestTemplate (RestTemplate 기초, RestTemplate으로 카카오 API 호출하기) 목차 RestTemplate RestTemplate 동작 RestTemplate 설정 Connection Pool Message Converter RestTemplate Method GET POST PUT DELETE Exchange 컬렉션 객체를 결과로 받기 Contenty Type과 Message Converter 카카오 번역 API 호출하기 TranslationService 구현 Controller 구현 카카오 번역 API를 사용하기 위해 Spring RestTemplate을 공부한 내용입니다. 개발 환경 os : window10 ide : intellij IDEA Ultimate 2020.2 java : jdk 11 build tool : maven spring boot 2.3 RestTempla.. 2020. 11. 26.
[springboot] REST API 만들기 (REST의 개념/ controller unit test / @AutoConfigureMybatis ) REST Representational State Transfer REST란 웹과 같은 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처의 한 형식이다. 자원을 나타내는 이름으로 구분하고 해당 자원의 상태(Representation of Resource)를 주고 받는 것을 의미한다. HTTP URI + HTTP Method HTTP URI를 통해 제어할 자원을 명시하고 HTTP Method(GET, POST, PUT, DELETE ~CRUD Operation)를 통해 해당 자원을 제어하는 명령을 내리는 방식의 아키텍처 자원의 상태(실제 데이터)는 request body에 json이나 xml 형식으로 전달하는 것이 일반적이다. 특징 서버와 클라이언트의 역할을 명확하게 분리한다 Server - 자원을 가진.. 2020. 11. 20.
[springboot] mybatis 사용하기(+mybatis unit test) Springboot에서 Mybatis 사용하기 DB 연결 사용하려는 DB에 대한 의존성을 추가하고 db 관련 프로퍼티를 설정하면 쉽게 연동할 수 있다. dependency 추가 연결하는 것이 목적이기 때문에 가벼운 h2 데이터베이스를 사용했다. com.h2database h2 runtime DataSource 설정 어플리케이션 프로퍼티 파일(application.yml or application.properties)에 DataSource를 설정한다. springboot는 connection pool로써 hikariCP를 디폴트로 사용하지만 TomcatCP, Commons DBCP2도 지원한다. ** datasource는 db connection을 관리하는 객체이고 이를 위해 자체적으로 CP기능을 구현하고.. 2020. 11. 20.
[springboot] springboot 특징(의존성 관리, Auto Configuration) Created: Nov 4, 2020 5:23 PM springboot 특징 단독 실행(stand-alone) 가능한 스프링 애플리케이션을 생성한다. 내장 서버(web container)를 포함하고 있다. 의존성 관리 빌드 구성을 단순화하는 starter 제공하여 인코딩,플러그인,버전 등 의존성을 관리해준다 Auto Configuration xml이나 java 설정이 필요 없이 의존성과 환경 변수만 설정하면 된다. ↔ 기존 스프링에서 겪었던 설정의 어려움을 해소 → initializer를 통해 빠르고 쉽게 프로젝트 구성 가능하다. spring initializr 를 통해 프로젝트 생성 빌드 툴, 언어, 스프링 부트 버전, 프로젝트 메타데이터 설정 사용할 depedencies 등록 spring boot 의.. 2020. 11. 16.