CH02 JPA 시작하기
1. Hello JPA - 프로젝트 생성
H2 데이터베이스 설치와 실행/IntelliJ 실행

pom.xml에 라이브러리 추가

JPA 설정하기 - src/main/resources/META-INF 디렉토리 생성 후 persistence.xml 생성

데이터베이스 방언
- 방언: SQL 표준을 지키지 않는 특정 데이터베이스만의 고유한 기능
- JPA는 특정 데이터베이스에 종속 X
- 각각의 데이터베이스가 제공하는 SQL 문법과 함수는 조금씩 다름

hibernate.dialect 속성에 지정
하이버네이트는 40가지 이상의 데이터베이스 방언 지원
2. Hello JPA - 애플리케이션 개발

<실습 - JPA 동작 확인>
1. 회원 등록
테이블 만들기

Member.java 생성

JpaMain 생성

실행 화면

DB에 데이터 저장 성공

참고 )

2. 회원 조회
JpaMain 수정

실행 결과

3. 회원 수정
JpaMain 수정

실행 결과


주의
- 엔티티 매니저 팩토리는 하나만 생성해서 애플리케이션 전체에서 공유
- 엔티티 매니저는 쓰레드간에 공유X (사용하고 버려야 한다).
- JPA의 모든 데이터 변경은 트랜잭션 안에서 실행
JPQL
- JPA를 사용하면 엔티티 객체를 중심으로 개발
- JPA는 SQL을 추상화한 JPQL이라는 객체 지향 쿼리 언어 제공
- SQL과 문법 유사, SELECT, FROM, WHERE, GROUP BY, HAVING, JOIN 지원
- SQL을 추상화해서 특정 데이터베이스 SQL에 의존X
JPQL은 엔티티 객체를 대상으로 쿼리
SQL은 데이터베이스 테이블을 대상으로 쿼리
인프런 강의) 김영한의 스프링 부트와 JPA <자바 ORM 표준 JPA 프로그래밍 - 기본편>
'Java > spring' 카테고리의 다른 글
[자바 ORM 표준 JPA 프로그래밍] ch03 영속성 관리 (0) | 2022.10.02 |
---|---|
[자바 ORM 표준 JPA 프로그래밍] ch01 JPA 소개 (0) | 2022.10.02 |
[스프링 기본] ch01 객체 지향 설계와 스프링-SOLID 원칙 (0) | 2022.05.26 |
[스프링 기본] ch01 객체 지향 설계와 스프링-스프링이란? (0) | 2022.05.25 |
[스프링 입문] ch07 AOP (0) | 2022.05.23 |
댓글