일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 1차원 DP
- 2차원 dp
- 99클럽
- @BeforeAll
- @BeforeEach
- @Builder
- @Entity
- @GeneratedValue
- @GenericGenerator
- @NoargsConstructor
- @Query
- @Table
- @Transactional
- Actions
- Amazon EFS
- amazon fsx
- Android Studio
- ANSI SQL
- ApplicationEvent
- assertThat
- async/await
- AVG
- AWS
- Azure
- bind
- builder
- button
- c++
- c++ builder
- c03
- Today
- Total
기록
[튜토리얼] springboot에 데이터베이스(h2) 연결하기(2) 본문
1. h2
H2는 자바로 작성된 관계형 데이터베이스 관리 시스템으로 환경설정이 비교적 쉬워 로컬 환경 및 테스트 환경에서 많이 사용한다.
개발환경
- Mac OS(m1)
- java 11
- intellij IDEA 2022.2.1 (Ultimate Edition)
- gradle
2. install h2
download h2(h2database.com/html/main.html)
connect h2
h2를 다운받은 곳으로 커맨드창을 열어서, h2.sh파일을 실행하면 자동으로 h2콘솔로 연결된다. (http://localhost:8082/login.jsp?jsessionid=...)
처음 접근했을 때에는 아래와 같은 오류가 발생하므로, 해당 경로에 '데이터베이스이름.mv.db'파일을 생성해야 한다.
우선 JDBC URL을 jdbc:h2:~/test로 변경하고 연결하면, 루트폴더에 '데이터베이스이름.mv.db'파일이 생성되어 있다.
그 다음, jdbc:h2:tcp://localhost/~/test로 연결하면, 다음과 같은 화면을 볼수 있다.
3. connect project
connection을 테스트 할때나 프로젝트에서 데이터베이스에 접근하기 위해서는 (./h2.sh)를 입력한 콘솔창이 계속 켜져 있어야 한다.
add dependency
// build.gradle
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
implementation 'org.springframework.boot:spring-boot-devtools'
developmentOnly 'org.springframework.boot:spring-boot-devtools'
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
// h2 추가
runtimeOnly 'com.h2database:h2'
}
add resources/application.properties
spring.h2.datasource.url=jdbc:h2:tcp://localhost/~/test
spring.h2.datasource.driver-class-name=org.h2.Driver
spring.h2.datasource.username=sa
spring.h2.datasource.password=
add Database
4. test
spring project를 기동하고 http://localhost:8080/h2-console에 접근하면 아래와 같은 h2콘솔에 접근할 수 있고, 설정한 정보를 입력하여 접속할 수 있다.
5. 마치면서
데이터베이스를 연결하였고, 이후 포스팅에서는 mapper로 mybatics를 두어 프로젝트에서 사용하는 데이터를 영속화하고자 한다. mySql과 h2 두 종류의 데이터 베이스를 연결해 보았으나, 데이터베이스를 설치하고- 프로젝트에 연결하는 순서로 진행되며 크게 다르지 않았다. 그래서 mapper를 연결하는 포스팅은 mySql과 h2 중 하나를 선택해 정리하고자 한다.
'Web > Spring' 카테고리의 다른 글
[튜토리얼] 의존성 주입(2) 자바코드 (0) | 2022.09.12 |
---|---|
[튜토리얼] 의존성 주입(1) 컴포넌트 스캔 (0) | 2022.09.07 |
[튜토리얼] springboot에 데이터베이스(MySql) 연결하기(1) (0) | 2022.08.31 |
[튜토리얼] spring boot 게시판 curd (0) | 2022.08.29 |
[튜토리얼] create spring boot project (0) | 2022.08.22 |