목록분류 전체보기 (13)
임도현의 성장
Spring Data JPAJPA는 Java 오프젝트를 관계형 데이터베이스에 매핑하는 Java 표준이다. JPA는 개발자가 데이터베이스에 데이터를 CRUD(Create, Read, Update, Delete)를 위해 SQL을 작성할 필요없이 객체를 조작하는 것만으로 데이터베이스에 CRUD 수행할 수 있게 해준다. 대표적인 JPA 기반 구현체로 Hibernate가 있다. Spring Data JPA는 JPA를 더 쉽게 사용할 수 있도록 도와주는 모듈이다.Query DSLQueryDSL은 Hibernate Query Language의 쿼리를 타입에 안전하게 생성 및 관리해주는 Java 프레임워크이다. QueryDSL은 정적 타입을 이용하여 SQL과 같은 쿼리를 생성할 수 있게 해준다.JPA 장점쿼리를 하나하..
🤔 H2 데이터베이스 란?H2 데이터베이스는 "Java"로 작성된 경량형 오픈소스 관계형 데이터베이스(RDMS) 관리 시스템입니다.서버(Server) 모드와 임베디드(Embedded) 모드의 인메모리 DB 기능을 지원하며 브라우저 기반의 콘솔모드를 이용할 수 있으며, 메모리 내에서 실행할 수 있어 빠르고 간편하게 사용할 수 있습니다.RDBMS는 DBMS에 Relational이 추가된 것으로 쉽게 말하자면 테이블 기반의 DBMS이다.DBMS는DataBase Management System으로 데이터베이스 관리 시스템이다.📌 H2 데이터베이스 다운로드H2 데이터베이스 공식 사이트에 접속 후 All Platforms 다운로드📌 파일 실행다운로드 파일을 압축을 풀고 cmd로 h2\bin 경로로 이동한 후 ..
📌 MyBatis Mybatis는 데이터베이스로부터 직접 SQL문으로 데이터를 가져오고 객체(Entity든지, DTO든지, VO든지)에 반영하여 사용하도록 해주는 데이터베이스 접근 프레임워크이다. MyBatis의 가장 매력적인 점은 SQL을 XML에 편리하게 작성할 수 있고 또 "동적 쿼리"를 매우 편리하게 작성할 수 있다는 점이다. 📒의존성 주입 build.gradle에 다음 의존 관계를 추가한다.//MyBatis 추가implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:3.0.3'📒 properties 설정 mybatis.type-aliases-package : 마이바티스에서 "타입 정보"를 사용할 때는 패키지 이름을 적어주어..
📌 쿠키 Cookie웹사이트를 방문할 때 클라이언트(브라우저) 로컬에 저장되는 키와 값이 들어있는 작은 데이터 조각이다.쿠키 종류영속 쿠키 : 만료 날짜를 입력하면 해당 날짜까지 유지세션 쿠키 : 만료 날짜를 생략하면 브라우저 종료시 까지만 유지쿠키 동작 방식 클라이언트가 페이지를 요청서버에서 쿠키를 생성HTTP 헤더에 쿠키를 포함 시켜 응답브라우저가 종료되어도 쿠키 만료 기간이 있다면 클라이언트에서 보관하고 있음같은 요청을 할 경우 HTTP 헤더에 쿠키를 함께 보냄서버에서 쿠키를 읽어 이전 상태 정보를 변경 할 필요가 있을 때 쿠키를 업데이트 하여 변경된 쿠키를 HTTP 헤더에 포함시켜 응답📒쿠키 생성로그인에 성공하면 쿠키를 생성하고 HttpServletResponse 에 담는다. 쿠키 이름은 me..
데이터 모델링이란정보시스템을 구축하기 위한 데이터 관점의 업무 분석 기법현실 세계의 데이터를 약속된 표기법으로 표현하는 과정데이터베이스를 구축하기 위한 분석 및 설계의 과정 데이터 모델링 유의점 증복 : 여러 장소에 같은 정보를 저장하지 않도록 하여 증복성을 최소화 한다.비유연성 : 업무변화에 데이터 모델이 수시로 변경되면 안됨. 데이터 정의를 사용 프로세스와 분리한다.비일관성 : 데이터 간 상호 연관 관계에 대해 명확히 정의해야 한다. 데이터 모델링의 3단계 (개논물)개념적 모델링 : 높은 추상화수준 논리적 모델링 : 재사용성 높은 물리적 모델링 : 물리적인 성격을 고려해 설계 데이터 모델의 특징 추상화 : 현실세계를 일정한 형식에 맞추어 표기단순화 : 복잡한 현실을 제한된 언어나 표기법을 통해 이..
인터셉터 Interceptor 란?스프링 인터셉터는 스프링 MVC가 제공하는 기술이다스프링부트에서 인터셉터는 웹 애플리케이션에서 요청과 응답을 처리하는 중간 단계에서 사용된다. 인터셉터는 특정 URI 패턴에 대한 요청을 가로채어, 컨트롤러가 처리하기 전후에 추가적인 작업을 더욱 효율적으로 할 수 있게 해 준다.1. 스프링 인터셉터 흐름스프링 인터셉터는 디스패처 서블릿과 컨트롤러 사이에서 컨트롤러 호출 직전에 호출 된다.HTTP 요청 -> WAS -> 필터 -> 서블릿 -> 스프링 인터셉터 -> 컨트롤러스프링 인터셉터는 체인으로 구성되는데, 중간에 인터셉터를 자유롭게 추가할 수 있다. 예를 들어서 로그를 남기는 인터 셉터를 먼저 적용하고, 그 다음에 로그인 여부를 체크하는 인터셉터를 만들 수 있다.HTTP..