본문 바로가기

카테고리 없음

JDBC개념, 탄생배경, 한계점

반응형

1. 애플리케이션 서버와 DB의 일반적인 사용법의 문제점

  • 데이터베이스를 다른 종류의 데이터베이스로 변경하면 애플리케이션 서버에 개발된 데이터베이스 사용 코드도 함께 변경해야 한다
  • 개발자가 각각의 데이터베이스마다 커넥션 연결, SQL 전달, 그리고 그 결과를 응답 받는 방법을 새로 학습해야한다

2. JDBC개념과 나온 이유는?

  • 위 1번과 같은 문제를 해결하기 위해 JDBC라는 표준 인터페이스가 나왔다.
  • JDBC(Java Database Connectivity) : 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API다
  • 애플리케이션 로직은 이제 JDBC 표준 인터페이스에만 의존한다.
  • 따라서 데이터베이스를 다른 종류의 데이터베이스로 변경하고 싶으면 JDBC 구현 라이브러리만 변경하면 된다
  • JDBC 드라이버: 이 JDBC 인터페이스를 각각의 DB 벤더(회사)에서 자신의 DB에 맞도록 구현해서 라이브러리로 제공하는데, 이것을 JDBC 드라이버라 한다.
  • 따라서 다른 종류의 데이터베이스로 변경해도 애플리케이션 서버의 사용 코드를 그대로 유지할 수 있다.

3. JDBC 표준화의 한계

  • 데이터베이스를 변경하면 JDBC 코드는 변경하지 않아도 되지만 SQL은 해당 데이터베이스에 맞도록 변경해야한다.
  • 각각의 데이터베이스마다 SQL, 데이터타입 등의 일부 사용법 다르다.
  • ANSI SQL이라는 표준이 있기는 하지만 일반적인 부분만 공통화했기 때문에 한계가 있다.
  • JPA(Java Persistence API)를 사용하면 이렇게 각각의 데이터베이스마다 다른 SQL을 정의해야 하는문제도 많은 부분 해결할 수 있다.
반응형