H2 DB : Java 기반의 경량화된 관계형 데이터베이스
- file로 저장해서 실제 db처럼 data를 유지할 수도 있고, 메모리 db로 사용해서 실제 인스턴스가 동작하는 시점에만 유지하기도 한다.
- 특히, 프로젝트 초기에 개발을 많이 하는 시점에는 test db로 사용하기도 하고 프로젝트 정착 이후에 유지 보수를 진행하는 기간에는 Junit test용 db로 H2 db를 많이 사용한다.
build.gradle을 살펴보면 h2 db가 설치되어있는 것을 볼 수 있다.
만약 프로젝트 만들 때 의존성 추가를 하지 않았다면, build.gradle에 의존성을 추가해주면 된다.
서버 띄우기
파일 확장자 변경 (지금은 변경 후에 만약 확장자를 바꾸려면 어떻게 하는지 보여주는 것)
properties를 yml로 수정
yml이 properties 보다는 계층적인 구조를 더 잘 보여준다고 해서 yml을 많이 사용하는 추세이다.
간단하게 yml을 작성하고 실행하면 다음과 같이 결과가 나온다.
만약 포트 번호가 겹친다?
포트 번호를 지정해주는 코드 추가
h2에 대한 정보를 알 수 있다.
코드 뜯어보기
spring:
h2:
console:
enabled: true
h2: console: enabled: true 를 적어주면서 자동으로 h2 db를 in-memory db로 부팅해준다.
브라우저로 접속해보기
localhost:8080/h2-console/
실행했을 때 나타나는 db 주소를 가지고
주소를 복사하고 JDBC URL에 넣고 [Connect]
이런 화면이 뜬다.
test 해보기
show databases;
위의 명령어를 입력해주고 [Run]을 클릭하면 결과가 나오게 된다.
Intellij로 접속해보기
- 여기서 만약 ⚠️~~ Download 이런 경고문이 뜨면 Download 해주기
- 후에 Test Connection 해주고 Succeeded 뜨면 된다.
- Connection type은 In-memory
- 다 세팅이 되면 [OK] 클릭
test 해보기
- 오른쪽을 보면 H2가 잘 설치되었음을 볼 수 있다.
- Console 창에서 명령어 입력 (1번)
- 실행 버튼 클릭 (2번)
- 결과가 다음과 같이 나온다면 잘 실행된 것이다.
2023 KAKAO Tech Campus_BackEnd 선택 과정
Spring JPA와 Security 강의 정리 내용입니다.
'개발 > Spring' 카테고리의 다른 글
Repository Interface 메소드 실습 (1) (0) | 2023.07.20 |
---|---|
Repository Interface 계층 살펴보기 (0) | 2023.07.20 |
Lombok 알아보기 (0) | 2023.07.17 |
스프링 부트 프로젝트 생성 (0) | 2023.07.17 |
JPA (0) | 2023.07.05 |