JDBC(Java Database Connectivity)
자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API.
JDBC는 데이터베이스에서 자료를 쿼리하거나 업데이트 하는 방법을 제공.
대표적으로 다음 3가지 기능을 표준 인터페이스로 정의해서 제공한다.
java.sql.Connection - 연결
java.sql.Statement - SQL을 담은 내용
java.sql.ResultSet - SQL 요청 응답
자바는 이렇게 표준 인터페이스를 정했다.
이제부터 개발자는 이 표준 인터페이스만 사용해서 개발하면 된다.
그런데 인터페이스만 있다고 해서 기능이 동작하는것은 아니다.
이 JDBC 인터페이스를 각각의 DB 에서 자신이 사용하는 DB에 맞도록 구현해서 라이브러리로 제공하는데,
이것을 JDBC 드라이버라고 한다.
예를 들어서 MYSQL DB에 접근할 수 것은 MYSQL JDBC 드라이버라고 하고, Oracle DB에 접근할 수 있는 것은 Oracle JDBC 드라이버 라고 한다.
다른 종류의 데이터베이스로 변경 한다고 하면 JDBC 구현 라이브러리만 변경하면 된다.
따라서 다른 종류의 데이터베이스로 변경해도 애플리케이션 서버의 사용 코드를 그대로 유지할 수 있다.
한계
JDBC로 많은 것이 편리해졌지만, 각각의 데이터베이스 마다 SQL, 데이터타입 등의 일부 사용법은 다르다.
결국 데이터베이스를 변경하면 JDBC 코드는 변경하지 않아도 되지만 SQL은 해당 데이터베이스에 맞도록 변경해야 한다.
스프링 DB 1편 - 데이터 접근 핵심 원리
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-db-1/dashboard