[김영한님의 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술] 파일명 오탈자 수정
This commit is contained in:
40
SpringBoot-Introduction/Lectures/Lecture18.md
Normal file
40
SpringBoot-Introduction/Lectures/Lecture18.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# H2 데이터베이스 설치
|
||||
- 실무에서는 데이터베이스에 데이터를 저장하고 관리한다.
|
||||
- `H2 데이터베이스`는 교육용으로 굉장히 좋다. 용량도 작고 가볍고 웹으로 어드민 화면도 제공해준다.
|
||||
|
||||
---
|
||||
|
||||
## H2 데이터베이스
|
||||
- [H2 데이터베이스](https://www.h2database.com) 압축파일 다운로드 및 설치, h2 데이터베이스 버전은 스프링 부트 버전에 맞춘다.
|
||||
- 실행파일을 실행(Mac의 경우 권한추가 필요)하면 `H2 콘솔` 창이 뜬다.
|
||||
- 권한 주기(Mac): chmod 755 h2.sh
|
||||
- 실행(Mac): ./h2.sh
|
||||
- 이때 포트번호 앞의 ip부분을 `localhost`로 변경하여 접근한다.
|
||||
- 가장 먼저 데이터베이스 파일을 만들어야 한다.
|
||||
|
||||
### 데이터베이스 파일 생성 방법
|
||||
- `JDBC URL`에 `jdbc:h2:~/test` (최초 한번) 입력후 연결.
|
||||
- `~/test.mv.db` 파일 생성되었는지 확인(여기서 `~`은 C드라이브의 사용자 폴더(`home`)를 말함)
|
||||
- 이후부터는 `jdbc:h2:tcp://localhost/~/test` 이렇게 접속한다(파일로 접근하면 애플리케이션이랑 웹 콘솔이랑 동시에 접근이 안되거나 오류가 날 수 있기 때문이다).
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
## H2 데이터베이스 테이블 생성하기
|
||||
|
||||
테이블 관리를 위해 프로젝트 루트에 `sql/ddl.sq` 파일을 생성하여 정리한다.
|
||||
```
|
||||
drop table if exists member CASCADE;
|
||||
create table member
|
||||
(
|
||||
id bigint generated by default as identity,
|
||||
name varchar(255),
|
||||
primary key (id)
|
||||
);
|
||||
```
|
||||
- 자바의 `Long` 타입은 `DB`에서는 `bigint` 타입으로 선언한다.
|
||||
- `generated by default as identity`를 선언하면 만약 `null`값, 즉 해당 컬럼에 값을 셋팅하지 않았다면 데이터가 들어왔을 때 `DB`가 자동으로 값을 채워준다.
|
||||
- 쉽게 말하면 `DB야 너가 알아서 PK값 넣어줘`와 같다.
|
||||
|
||||
---
|
||||
Reference in New Issue
Block a user