이전까지 Spring Boot의 MVC 패턴을 이용하여 Memory 방식으로 DB 를 처리했었다.
본격적으로 4가지의 DB 접근기술을 활용하여, h2 database 를 CRUD 하는 방법을 알아보자.
(h2를 사용하는 이유는 별다른거 없고, DB가 가벼우며 admin 화면도 제공하기때문)
DB 접근 기술의 종류
- 순수 JDBC : SQL을 활용하여 Application Server 와 DB을 연결할 수 있도록 하는 DB 접근 기술
- Spring JDBCTemplate : Spring 이 JDBC의 중복제거하고 쉽게 SQL을 날릴 수 있도록 제공하는 템플릿
- JPA : SQL도 직접 개발자가 작성하지 않고, JPA 내에서 처리할 수 있도록하는 기술, 객체를 DB에 쿼리없이 저장할 수 있다.
- Spring Data JPA : JPA를 편리하게 쓸 수 있도록 한번 감싼 기술
H2 database 설치
먼저 위와 같은 방법으로 H2 database 를 설치해주고, h2 데이터베이스 파일이 생성되었다면
h2.sh 실행으로 h2 console 에서 접속할 때 JDBC URL에 'jdbc:h2:tcp://localhost/~/test' 를 입력하여
파일 'jdbc:h2:~/test' 와 같이 파일로 접근하면, 나중에 웹 콘솔에 접근하면서 DB에 접근해야할 때 충돌이 발생할 수 있다.
따라서 생성한 파일에 직접 접속하기보다는 위 URL로 웹소켓을 통해서 접속할 수 있도록 한다.
MEMBER Table 생성
MEMBER 테이블 데이터 insert, select
먼저 H2 를 설치하고, 전에 만든 도메인 Member class 에서 다루는 변수와 동일하게 식별자 Id 와 name 을 포함하는
MEMBER 테이블을 생성하고 데이터도 insert 해준다.
sql DDL 관리
JDBC 방식에서 날리고자하는 SQL 을 저장해주는 것이 좋으므로 src 밖의 sql 폴더를 생성하여 관리해준다.
다음 포스팅부터 JDBC 를 직접 활용하는 법을 알아보자.
'Java > 스프링 입문 - 스프링 부트, 웹 MVC, DB 접근 기술' 카테고리의 다른 글
[Spring Boot] Spring 통합 테스트(@SpringBootTest, @Transactional) (0) | 2022.07.05 |
---|---|
[Spring DB 접근 기술 - (2)] 순수 JDBC (0) | 2022.07.05 |
[회원 관리 예제 : 웹 MVC 개발] 홈, 회원 등록, 회원 조회 (0) | 2022.07.01 |
[Spring Bean과 의존관계 - (2)] Java Code 로 직접 Spring Bean 에 등록하기 (0) | 2022.07.01 |
[Spring Bean과 의존관계 - (1)] Component Scan 과 자동 의존관계 설정 (0) | 2022.07.01 |