JPA

· BE/JPA
이 포스팅에서 작성하는 내용은 자바 ORM 표준 JPA 프로그래밍 (김영한 지음) 에서 발췌하였습니다. 영속성 컨텍스트 - "엔티티를 영구 저장하는 환경" 이라는 뜻 - JPA를 이해하는데 가장 중요한 개념 - JPA를 이용하면 영속성 컨텍스트라는 개념이 자주 등장하니 초기에 잡아주는 것이 중요 - JPA와 Java 객체 사이의 임시 보관소? 라고 생각하면 쉽다. → 이 임시 보관소에 들어가야 JPA 관련 작업이 가능하다. 1. 엔티티 매니저 & 영속성 컨텍스트 - 영속성 컨텍스트는 논리적인 개념(눈에 보이지 않음) - 엔티티 매니저를 통해서 영속성 컨텍스트에 접근 2. 엔티티의 생명주기 비영속 (new/transient) 영속성 컨텍스트와 전혀 관계가 없는 새로운 상태 // JPA와 관련없이 단순히 객..
· BE/JPA
이 포스팅에서 작성하는 내용은 자바 ORM 표준 JPA 프로그래밍 (김영한 지음) 에서 발췌하였습니다. 1. JPA에서 단일건이 아닌 리스트 조회 우선, MemberInfo 테이블을 아래의 데이터처럼 직접 수정해둔다. 리스트를 조회하기 위해서는 JPQL이라는 기능을 이용해야함. JPQL은 우리가 알고있는 일반적인 쿼리는 아님. package com.sampleJpa; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.EntityTransaction; import javax.persistence.Persistence; import java.util.List;..
· BE/JPA
이 포스팅에서 작성하는 내용은 자바 ORM 표준 JPA 프로그래밍 (김영한 지음) 에서 발췌하였습니다. 1. JPA 구동 방식 1) pesistence라는 클래스가 persistence.xml(설정파일)을 읽어서 EntityManagerFactory라는 클래스를 만든다. 2) EntityManagerFactory에서 EntityManager를 생성한다. - EntityManagerFactory 는 하나만 생성해서 애플리케이션 전체에서 공유 (싱글톤) - EntityManager는 쓰레드 간에 공유되지 않음. (사용하고 버려야함) - JPA의 모든 데이터 변경은 트랜잭션 안에서 실행되야함 2. JPA 구조 설정 1) EntityManagerFactory를 만들어보자. 필자는 아래의 그림처럼 'jpaMain..
· BE/JPA
이 포스팅에서 작성하는 내용은 자바 ORM 표준 JPA 프로그래밍 (김영한 지음) 에서 발췌하였습니다. 1. DataBase 설치 - H2 DataBase 사용 Oracle or MySQL 대신 H2 DataBase를 사용하는 이유???? - 실습에 최적화된 DB - 가벼움(1.5MB) - 웹용 쿼리 툴 제공 - Oracle, MySQL DB 시뮬레이션 가능 - Sequence, Auto Increment 기능 지원 설치 방법 1) 아래의 페이지에서 자신의 플랫폼에 맞게 다운로드 진행. https://www.h2database.com/ H2 Database Engine (redirect) H2 Database Engine Welcome to H2, the free SQL database. The main..
· BE/JPA
이 포스팅에서 작성하는 내용은 자바 ORM 표준 JPA 프로그래밍 (김영한 지음) 에서 발췌하였습니다. JPA - Java Persitence API - JAVA의 ORM 기술 표준 - 인터페이스의 모음. (3가지 구현체 중, 하이버네이트를 대부분 사용) ORM? - Object-relational mapping(객체 관계 매핑) - 대중적인 언어는 대부분 ORM 기술이 존재하며, JAVA의 ORM 기술 표준이 JPA이다. - 객체는 객체 지향 언어가 지향하는 대로 모델링을 하면 되고, RDBMS는 RDBMS대로 설계 → 객체와 RDBMS의 매핑 작업을 ORM이 도와줌. JPA의 역사 1. EJB - 엔티티 빈 자바 표준 ORM이었으며, 이 기술이 획기적이었지만 사용하기 불편하여 잘 사용되지 않았다. 2..
· BE/JPA
회사에서 MyBatis, iBatis위주로 사용을 해왔는데 요새 JPA라는 기술이 많이 사용되고 있다고 한다. 간단하게 말하면 Java에서 JDBC를 관리해주는 기능인데, 쉽게 관리해주는 기능으로 사용하기가 편리하다고들 한다. 이 기술에 대해 호기심이 생겼고, 현재 진행하고 있는 사이드 프로젝트에 도입할 생각이다. (실무에서는 어렵다고하기에, 회사 프로젝트는 JPA에 대해 충분히 공부한 후 상황이 적합하다면 도입할 의지가 있다. ) 그럼, JPA에 대해 알아보자. 이 포스팅에서 작성하는 내용은 자바 ORM 표준 JPA 프로그래밍 (김영한 지음) 에서 발췌하였습니다. 1. DB 통신 방식 1-1. JDBC 방식, MyBatis 위의 두 방식 모두 개발자가 직접 SQL문을 작성해서 통신을 진행 1-2. JP..
멍목
'JPA' 태그의 글 목록 (2 Page)