본문 바로가기
IT/Database

com.mysql.cj.jdbc.Driver와 com.mysql.jdbc.Driver 차이 (23.04.25)

by 성준하이 2023. 4. 28.
반응형

데이터베이스와 연동하는 개발을 하기 위해서는 jdbc를 필수적으로 필요로 한다.

그중 오픈라이선스로 무료인 mysql을 개인으로는 많이 사용하고 필자 역시 사용하는데,

driver가 이름은 같지만 도메인 자체가 다른 제목과 같은 두 드라이버에 대한 차이를 알아보려고 한다.

 

- com.mysql.cj.jdbc.Driver

- com.mysql.jdbc.Driver

 

둘의 차이는 사용하는 mysql connector의 버전이다. com.mysql.jdbc.Driver는 Connector/J 5.x 버전까지 사용되었고
Connector/J 8.x 버전부터는 com.mysql.cj.jdbc.Driver를 사용해야 한다. 

 


실제로 mysql-connector-java-8.0.22.jar 파일을 디컴파일러로 까보면 패키지가 com.mysql > cj > Driver.class 순으로 진입되는 걸 확인할 수 있다.

 

이외에도 버전 변화와 함께 아래의 클래스 및 인터페이스의 명칭에도 변화가 있었는데 아래와 같다.

기존 변경
com.mysql.jdbc.ExceptionInterceptor com.mysql.cj.exceptions.ExceptionInterceptor
com.mysql.jdbc.StatementInterceptorV2 com.mysql.cj.interceptors.QueryInterceptor
mysql.jdbc.ConnectionLifecycleInterceptor com.mysql.cj.jdbc.interceptors.ConnectionLifecycleInterceptor
com.mysql.jdbc.AuthenticationPlugin com.mysql.cj.protocol.AuthenticationPlugin
com.mysql.jdbc.BalanceStrategy com.mysql.cj.jdbc.ha.BalanceStrategy
com.mysql.jdbc.jdbc2.optional.MysqlDataSource com.mysql.cj.jdbc.MysqlDataSource
com.mysql.jdbc.jdbc2.optional.MysqlDataSourceFactory com.mysql.cj.jdbc.MysqlDataSourceFactory
com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource com.mysql.cj.jdbc.MysqlConnectionPoolDataSource
com.mysql.jdbc.jdbc2.optional.MysqlXADataSource com.mysql.cj.jdbc.MysqlXADataSource
com.mysql.jdbc.jdbc2.optional.MysqlXid com.mysql.cj.jdbc.MysqlXid

 

반응형

'IT > Database' 카테고리의 다른 글

데이터베이스 최적화 방법 2 (23.04.28)  (22) 2023.04.29
데이터베이스 최적화 방법 1 (23.04.27)  (9) 2023.04.29
[Tibero] view / procedure 조회  (12) 2023.04.22
rownum 과 limit 의 차이  (12) 2023.04.14
PSM 이란?  (30) 2023.04.03

댓글