
자바와 데이터베이스 연동하기를 배웠다. 새로운 단어들이 많고 비슷비슷한 기능을 하는거같은데 뭐가 뭐라고? 헷갈리는 개념 3가지를 정리해보겠다!!
여기서 잠깐 JDBC란?
- 자바언어와 데이터베이스를 연결해주는 통로
- 자바에서 데이터베이스에 접근할 수 있도록 해주는 자바 API
- 단점: 반복적이고 지루한 코드 작성이 필요하며 SQL 예외 처리, 리소스관리 등의 복잡한 작업을 직접 처리해야함.
1. Spring JDBC
JDBC의 복잡성을 줄이기 위한 스프링 프레임워크의 일부
직접 SQL 쿼리를 작성하고 실행, 저수준의 데이터베이스 연동 방식
2. SQL Mapper
MyBatis가 속한다. (가장 널리 알려짐)
SQL 쿼리와 자바 객체를 매핑하는 방식으로 SQL을 직접 작성하지만 객체와의 매핑을 자동으로 처리한다. 따라서 데이터베이스 중심의 개발!!
3. ORM
Hibernate가 속한다. (가장 널리 알려짐)
자바 객체와 데이터베이스 테이블 간의 관계 매핑 방식으로 자바 객체(Entity)가 데이터베이스의 테이블과 어떻게 매핑 될지를 정의한다. 따라서 객체 중심의 개발!!
Spring JDBC, SQL Mapper, MyBatis .... 등등 어떤게 어디에 속하고 어떤게 무슨 역할을 하고 헷갈렸는데 정리가 싹 됐다. 이제서야 각각의 연동하는 방식을 이해할 수 있게 되었다. 끝-
참고 및 출처
1. [새싹 X 코딩온] 영등포 캠퍼스 6기 입문자도 가능한 웹 개발자 부트캠프 강의 교안
2. https://ittrue.tistory.com/250
3. https://mysterlee.tistory.com/49