H2 Database
- Java 기반의 경량화된 관계형 DB
- 파일로 저장해서 실제 DB처럼 데이터 유지 가능
- 메모리 DB로 사용해서 실제 인스턴스가 동작 시점에만 유지하는 것도 가능
- 테스트 DB로 주로 사용
- 유지보수 시 JUnit 테스트용으로 주로 사용
- 서버를 재기동시 초기화
설치 방법
- dependency 추가
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>2.2.224</version>
<scope>test</scope>
</dependency>
testImplementation 'com.h2database:h2:2.2.224'
- 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 /*기본값*/
- 프로젝트 실행
- 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);
}
}
}