본문 바로가기

컴쟁이의 알고리즘

CommunicationsException: Communications link failure 발생할 때

오늘 듣는 수업 중에 Tomcat을 사용해 진행 중이던 JSP 수업에 MySQL을 연동하여 DB를 사용해보는 과제가 있었습니다.

 

그런데 분명히 구글링도 해가며 적혀있는대로 했는데도 오류가 발생하기 시작했습니다.

 

MySQL에서 DB와 table도 만들고, Class 파일 만들어서 url, id, password 제대로 써서 Connection 만들고, 오류도 없고 등등 분명히 잘못한 부분이 없는데도 CommunicationsException: Communications link failure 에러에 페이지에서는 500번 에러가 둥둥 떠다니기 시작했습니다.

 

그래서 다시 구글링을 시작해서 Driver를 불러오는 Class.forName()을 제대로 맞춰주고, Driver파일도 받아서 Tomcat/lib에 넣어주고 기타 등등 모든 조치를 취했음에도 불구하고 여전히 같은 오류의 반복...

 

2시간이 넘는 삽질 끝에 그냥 제 코드의 저도 모르는 어느 부분이 잘못되었겠거니 생각하고 다른 예제를 받아 실행해보는데 그 예제조차 제대로 동작하지 않는 것을 보고 '아, 이건 설정 자체에 문제가 있는 것 같다.'라는 생각을 하였습니다. 그래서 DB부터 제대로 만들었는지 확인하기 위해 'select * from table이름;' 'commit;' 해서 table이 잘 만들어져 있다는 것을 확인한 후 다시 예제를 실행해보는데!!

 

짜잔, 잘 실행이 되더랍니다.

 

하하하하하하하하하하하하하하

 

이유는 모르겠는데 저렇게 한번 확인해서 table이 제대로 완성되었는지 DB측에서 update를 한번 해주지 않으면 Java가 못가져오는 것 같습니다.

 

같은 이유로 들어오신 분들은 DB에 쿼리문을 직접 작성하여 table마다 한번씩 확인해보시길 바랍니다.

 

그럼 문제가 해결되었길 기도하겠습니다!!