Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Thymeleaf
- Servlet
- SpringBoot
- 스프링
- springdatajpa
- JPQL
- 알고리즘
- jpa
- Spring Boot
- 스프링 핵심 기능
- 자바
- QueryDSL
- Proxy
- 인프런
- JDBC
- transaction
- 백준
- kotlin
- pointcut
- Greedy
- db
- spring
- 그리디
- AOP
- 스프링 핵심 원리
- Exception
- java
- Android
- 김영한
- http
Archives
- Today
- Total
개발자되기 프로젝트
JPA 시작, 프로젝트 세팅 본문
1. H2 DB 설치
H2 Datebase
1. H2 DB 설치 및 사용법은 이전 글 참고 H2 Database 설치 및 사용 법 2021.05.22 - [JPA] - H2 In-Memory DB H2 In-Memory DB 1. H2 DB 란? DB는 JAVA기반의 경량화된 관계형 DB file 로 저장하여 실제 DB처럼..
bsh-developer.tistory.com
- 가벼움
- 메모리DB
- 웹용 쿼리 툴
- MySQL, Oracle 시뮬레이션 가능
- 시퀀스, Auto Increment 지원
2. 메이븐 사용
- groupId : jpa-basic
- artifactId: ex1-hello-jpa
- version : 1.0.0
- pom.xml
- hibernate 버전은 스프링 홈페이지에서 확인 가능.
- hibernate 라이브러리 가져오면 JPA 인터페이스 다 있음 ㅋㅋ
Dependency Versions
The following table provides details of all of the dependency versions that are provided by Spring Boot in its CLI (Command Line Interface), Maven dependency management, and Gradle plugin. When you declare a dependency on one of these artifacts without dec
docs.spring.io
- H2 DB 버전은 꼭 다운받은 버전과 동일하게.
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>jpa-basic</groupId>
<artifactId>ex1-hello-jpa</artifactId>
<version>1.0.0</version>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<dependencies>
<!-- JPA 하이버네이트 -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>5.4.32.Final</version>
</dependency>
<!-- H2 데이터베이스 -->
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.4.199</version>
</dependency>
</dependencies>
</project>
3. JPA 설정
- JPA 설정 파일 : persistence.xml
- 표준 위치 : /META-INF/persistence.xml
- persistence version : JPA 버전
- persistence-unit name으로 이름 지정 : JPA쓸건데 이름은 뭐로?
- 필수 속성 필요 : DB 접근 정보필요,
- javax.persistence로 시작: JPA 표준 속성
- H2 DB JDBC Url : "jdbc:h2:tcp://localhost/~/test"
- hibernate로 시작: hiberanate 전용 속성
- 데이터베이스 방언 : "hibernate.dialect"
- DB바뀌면 hibernate설정 바꿔야함.
4. Dialect
- JPA는 특정 데이터베이스에 종속 x
- 각각의 데이터 베이스가 제공하는 SQL문법과 함수는 조금씩 다름
- 가변문자 : MySQL은 VARCHAR, Oracle은 VARCHAR2
- 문자열 자르는 함수 : SQL 표준은 SUBSTRING(), Oracle은 SUBSTR()
- 페이징 : MySQL은 LIMIT, Oracle은 ROWNUM - 방언(dialect) : SQL 표준을 지키지 않는 특정 데이터베이스만의 고유한 기능
- 각 DB에 맞에 dialect 설정해야함.
<property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/>
5. GitHub : Initial commit
GitHub - bsh6463/JPA
Contribute to bsh6463/JPA development by creating an account on GitHub.
github.com
'인프런 > [인프런] 자바ORM 표준 JPA 프로그래밍' 카테고리의 다른 글
플러시, 준영속 상태, 정리 (0) | 2021.08.08 |
---|---|
영속성 컨텍스트 2 (0) | 2021.08.08 |
영속성 컨텍스트 (0) | 2021.08.08 |
Hello JPA (0) | 2021.08.08 |
JPA? (0) | 2021.08.07 |
Comments