새소식

개발+공부/웹

[MySQL] java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver | MySQL JDBC Driver Not Found

  • -
728x90

java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
(java.lang.ClassNotFoundException: com.mysql.jdbc.Driver)

: mysql-connector-java를 사용하면서 다음과 같은 에러가 발생했다. 이는 mysql과 java가 제대로 연동되지 않았음을 의미한다.

 

어떻게 해결할 수 있을까?

인프런의 JSP 강의에서도 해당 내용을 다루고 있다. 하지만 mysql 버전이 5.X로 내가 사용하는 8.0과는 다르다.

MySQL 8.0 버전은 mysql-connector-java 5.X버전으로는 해결이 안 된다.

여기서 8.0버전의 connect파일을 다운받아 프로젝트의 src/main/webapp/WEB-INF/lib에 넣어준다.

단, jar파일 형태로 넣어주기 위해 Platform Independent를 선택한다. 

둘 중 아무거나 다운받아도 똑같다.

TAR를 다운받아서 열어보면 "mysql-connector-java-8.0.29" 디렉토리 안에 다음과 같은 파일들이 있는데,

이 중 가장 아래의 mysql-connector-java-8.0.29.jar 파일만 있으면 된다.

압축을 풀던, 복사를 하던, jar 파일을 프로젝트의 src/main/webapp/WEB-INF/lib 디렉토리에 넣어준다.

jar 파일을 넣었을 때, 프로젝트(Hello World)의 directory 구조

 

jdbc driver class

또한, 주의할 점은 jdbc driver class를 불러오는 방법이다.

com.mysql.cj.jdbc.Driver

// 예
Class.forName("com.mysql.cj.jdbc.Driver");

MySQL 5.1 버전 이하

더보기
com.mysql.jdbc.Driver

 


Reference

728x90
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.