[ H2 DB 사용 방식 ]
1. Server Mode
- 직접 엔진을 설치하여 사용하는 방식 (다운로드 해야 함)
- 애플리케이션과 상관 없는 외부에서 DB 엔진이 구동됨 (실행주체 = 외부)
- 데이터가 외부에 저장되므로, 애플리케이션을 종료해도 데이터가 사라지지 않는다 (DB 저장 위치 : 로컬(파일 시스템))
- 사용 용도 : 배포
- 공식 다운로드 : https://www.h2database.com/html/main.html
2. In-memory Mode
- 엔진을 설치하지 않고 애플리케이션 내부의 엔진을 작동하는 방식
- build.gradle / application.properties 설정을 통해 실행 가능하다 (실행 주체 = 스프링)
- 애플리케이션을 실행하면 DB엔진이 함께 실행되고, 종료하면 함께 종료된다 (휘발성)
- 데이터가 애플리케이션의 메모리에 저장되기 때문에, 애플리케이션을 종료하면 데이터가 사라진다 (DB 저장 위치 : 메모리)
- 사용 용도 : 테스트
# application.yml
spring:
datasource:
driver-class-name: org.h2.Driver
url: jdbc:h2:mem:{DB 이름}
username: sa
password:
3. Embedded Mode
- 엔진을 설치하지 않고 애플리케이션 내부의 엔진을 작동하는 방식
- build.gradle / application.properties 설정을 통해 실행 가능하다 (실행 주체 = 스프링)
- 애플리케이션을 실행하면 DB엔진이 함께 실행되고, 종료하면 함께 종료된다
- 데이터가 애플리케이션 외부에 저장되기 때문에, 애플리케이션을 종료해도 데이터가 사라지지 않는다 (DB 저장 위치 : 로컬(파일시스템))
- 사용 용도 : 개발
# application.yml
spring:
datasource:
driver-class-name: org.h2.Driver
url: jdbc:h2:{DB가 저장될 경로}
username: sa
password:
[ H2 실습 ]
# application.yml
spring:
datasource:
driver-class-name: org.h2.Driver
url: jdbc:h2:~/test
username: sa
password:
localhost:8080/h2-console 접속
1. Embedded Mode
Driver, URL, User Name 확인 > Connect 버튼
2. In-memory Mode
'스파르타 내배캠' 카테고리의 다른 글
내일배움캠프 Java 5기 마무-리 (4) | 2024.09.05 |
---|---|
[TIL] #40. AccessToken vs. RefreshToken (0) | 2024.06.20 |
[TIL] #39. 회원가입 구현 (0) | 2024.06.20 |
[TIL] #38. Validation (0) | 2024.06.18 |
[TIL] #37. MockMvc (0) | 2024.06.18 |