[JPA 기본] H2 Database
포스트
취소

[JPA 기본] H2 Database

H2 Database

  • Java 기반의 경량화된 관계형 DB
  • 파일로 저장해서 실제 DB처럼 데이터 유지 가능
  • 메모리 DB로 사용해서 실제 인스턴스가 동작 시점에만 유지하는 것도 가능
  • 테스트 DB로 주로 사용
  • 유지보수 시 JUnit 테스트용으로 주로 사용
  • 서버를 재기동시 초기화

설치 방법

  1. dependency 추가
    • xml
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>2.2.224</version>
            <scope>test</scope>
        </dependency>
        
1
- gradle
        testImplementation 'com.h2database:h2:2.2.224'
        
  1. application.properties 파일에 정보 추가 (※ 기본 계정 : sa)
    spring.datasource.url=jdbc:h2:~/DB명; #DB 고정
    spring.datasource.driverClassName=org.h2.Driver
    spring.datasource.username=sa
    spring.datasource.password=
    spring.h2.console.enabled=true
    spring.h2.console.path=/h2-console /*기본값*/
    
  1. 프로젝트 실행
  2. http://localhost:포트주소/h2-console로 이동

자신의 memory DB의 주소를 알기 위한 코드

package com.example.demo;

import java.sql.SQLException;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;

import javax.sql.DataSource;
import java.sql.Connection;

@Component
public class DatabaseConfig implements ApplicationRunner {

    @Autowired
    DataSource dataSource;

    @Override
    public void run(ApplicationArguments args) throws SQLException {
        try(Connection connection = dataSource.getConnection()){
            System.out.println(connection.getMetaData().getURL());
            System.out.println(connection.getMetaData().getUserName());
        } catch (Exception e){
            System.out.println(e);
        }
    }
}
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.