-
19강. H2 데이터베이스 설치스프링 프레임워크-입문 2021. 5. 5. 13:59
이전까지 했던 것은 메모리에 저장을 했기 때문에 서버가 내려가면 다 데이터가 내려갑니다. 실무에서는 DB를 통해서 저장을하게 됩니다.
우리는 간단한 DB인 H2를 설치하고 DB와 연결하는 JDBC 기술을 배워보도록 하겠습니다.
(JDBC의 순수한 기술을 체험해보도록 하겠습니다.)
Spring이 JDBC 템플릿을 제공하는데 JDBC를 사용하는 것보다 편리해졌습니다. 그 이후 JPA가 등장해 SQL도 개발자가 직접 처리하지 않도록 가능해졌습니다.
실무에서는 MySQL 계열이라고 불리는 DB들을 많이 사용하게 될 것입니다.
www.h2database.com/html/main.html
H2 Database Engine
H2 Database Engine Welcome to H2, the Java SQL database. The main features of H2 are: Very fast, open source, JDBC API Embedded and server modes; in-memory databases Browser based Console application Small footprint: around 2 MB jar file size Suppor
www.h2database.com
이 링크에 들어갑니다.
H2 데이터베이스는 교육용으로 좋습니다.
그 후 다운을 해주도록 하겠습니다.
저는 AllPlatforms를 다운을 받았습니다.
그 후 저는 lib 폴더로 이동 시킨 후 알집을 풀었고
window 유저는 h2.bat을 더블클릭하면 됩니다.
그럼 이 화면이 브라우저에서 출력이 됩니다.
최초에는 DB파일을 만들어야합니다.
내 홈에 있는 test라는 파일을 의미하는 것입니다. 연결 해보겠습니다.
C>사용자>임의의 사용자명에 들어가면
아래의 파일이 생긴것을 알 수 있습니다.
이후에 들어갈 때는 jdbc:h2:tcp://localhost/~/test 이것을 URL에 쳐서 들어갑니다.
(충돌을 방지하기 위해서)
파일에 직접 접근하는 것이 아니라 소켓을 통해 접근하는 것이 가능해서 여러 곳에서 접근이 가능하게 됩니다.
가끔 꼬여서 안될 때가 있는데 이럴 때는 test.mv.db를 삭제한 후 다시 실행하면 됩니다.
아래의 코드를 입력하겠습니다.
drop table if exists member CASCADE; create table member( id bigint generated by default as identity, name varchar(255), primary key (id) );
정상 실행이 됬습니다.
id의 값이 null로 들어올 경우 DB가 자동으로 값을 채워줄 수 있는 generated by default as identity를 추가했습니다.
조회를 해보면 아직 값이 입력되지 않아서 데이터는 없지만 SQL의 Desc가 만들어진 것을 알 수 있습니다.
값을 추가해봤습니다. 정상적으로 들어갔는지 화인해보겠습니다.
정상 실행이 된 것을 알 수 있습니다.
sql 파일은 따로 관리하는 것이 좋습니다.
ddl.sql을 생성한 후 아래 코드를 보관합니다.
깃에 올리거나할 때 파악하는 것이 용이하게 하기 위해서 입니다.
'스프링 프레임워크-입문' 카테고리의 다른 글
21강. 스프링 통합 테스트 (0) 2021.05.06 20강. 순수 JDBC (0) 2021.05.06 18강. 회원 웹 기능 - 조회 (0) 2021.05.05 17강. 회원 웹 기능 - 등록 (0) 2021.05.05 16강. 회원 관리 예제 - 웹 MVC 개발 (0) 2021.05.05