JPA의 1차캐시와 2차캐시.. 책이나 강의등을 통해 JPA를 공부하긴 하였으나,, 회사 프로젝트가 대부분 mybatis로 되어있기에 기억이 희미해져 간다.. 기억을 되살리고자 글로 정리하고자 한다. 일단, 네이버검색을 통해 캐시에 대한 사전적 정의를 본다. 캐시 (cache) 중앙 처리 장치의 성능 향상을 위해 사용하는 보조 기억 장치. 저용량, 고속의 반도체 기억 장치이다. 음.. 약간 하드웨어적 정의가 사전적 정의로 되어있다. cpu와 보조기억장치 사이에서 성능향상을 위해 두는 중간 레이어정도로 기술하고 있다. 그런데! 프로그래밍 용어와 관련된 사전적 정의도 있는데, JPA에서 말하는 캐시는 아래의 사전적 정의가 맞아보인다. 캐시(Cache) 캐시란 컴퓨터 프로그래밍 용어로, 자주 사용하는 데이터나..
현재 JPA공부를 하고있고, 현재는 객체지향 쿼리언어라는 챕터에 와있다. 여기서 QueryDSL이라는 것을 배우려 하는데, QueryDSL을 사용하면 Criteria JPQL보다 더 쉽게 코드를 작성할 수 있고 직관적이며 같은 기능을 제공한다고 한다. build.gradle에 아래와 같은 설정을 세팅한다. plugins { id 'java' id "com.ewerk.gradle.plugins.querydsl" version "1.0.10" } //querydsl 추가 시작 def querydslVersion = '4.3.1' def querydslDir = "$buildDir/generated/querydsl" querydsl { jpa = true querydslSourcesDir = querydslD..
JPA테스트를 위한 목적으로 h2를 설치하고 h2를 실행하려고 하니 아래처럼 뭔가 에러메시지와함께, h2로그인이 안되는 현상이 있었다.. 뭔지.. ? Database "/Users/juhyeontae/test" not found, either pre-create it or allow remote database creation (not recommended in secure environments) [90149-200] 90149/90149 (도움말) 아래쪽에 보니 붉은 에러가 위와같은 에러가 발생하고 있따.. 해결법) - 로그인 화면의 jdbc url에 아래의 값(각 컴퓨터 환경마다 다를 수 잇다. jdbc:h2:뒤에 Database not found라고 나온 경로를 넣어주면 되는것으로 보인다.)을 넣..
최근 JPA(Java Persistence API)에 대한 관심이 생겨서 해당 기술에 대한 공부를 진행중이다. 일전에 나는 거의 모든 프로젝트를 MyBatis를 위주로 Database에 접근하여 데이터를 추출, 저장, 수정하였지만 최근에는 JPA를 이용한 DataAccess가 대세로 보인다. JPA를 공부한 결과 SQL을 거의 사용하지 않고 객체를 이용하여 데이터에 접근하므로 좀 더 객체지향 적으로 코드를 작성하는 느낌이 있다. 이번 포스팅에서는 JPA를 실습하기 위한 개발환경 구성을 작성하고자 한다. 개발환경 IDE : STS 빌드툴 : Maven 1. File > Maven Project를 누른다. maven-archetype-quickstart 를 누른다. 적절한 Group Id와 Artifact ..