1. 프로그래밍/Spring
[스프링 입문] 6. 스프링 DB 접근 기술
mola23
2022. 2. 27. 14:39
강의
개발 : 웹MVC, 데이터 접근 기술, ORM 기술 등 모두 중요
build.gradle 설정
- jdbc : java는 db랑 연결하려면 jdbc driver가 반드시 필요함
- h2 : database가 제공하는 client
DB에 붙으려면 datasource가 필요함
0. 순수 Jdbc
- 사양됨
1. 스프링 JdbcTemplate
+ MyBatis
: SQL 직접 작성
- 실무에서도 많이 사용
2. JPA(JAVA Persistence API)
vs. MyBatis
SQL query도 자동 처리해줌 -> 개발 생산성 높일 수 있음
- SQL과 데이터 중심의 설계에서 객체 중심의 설계로 패러다임 전환 가능
jpa는 객체와 ORM(Object, Relational Mapping)의 기술
jpa : interface
hibernate : 구현체
build.gradle에서 data-jpa로 변경 ... jdbc도 포함함
application.properties에서도 추가
3. 스프링 데이터 JPA
jpa 기술을 스프링에서 감싸서 제공 ... jpql 작성할 필요 없음
- 스프링 데이터 JPA는 JPA를 편리하게 사용하도록 도와주는 기술
-> JPA를 먼저 학습한 이후에, 스프링 데이터 JPA를 학습해야 함
스프링 데이터 JPA가 JpaRepository를 상속받고 있는 interface를 자동으로 구현체를 생성하고, 스프링 빈에 자동으로 등록해줌