inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

김앵맹님의 게시글

김앵맹 김앵맹

@rladudaud973307

수강평 작성수
-
평균평점
-

게시글 1

질문&답변

DriverManager 가 Driver 후보들을 가지는 방법

'com.h2database:h2' 의존성 라이브러리의 org.h2.Driver 클래스에서 public static synchronized Driver load() 함수를 찾을 수 있습니다. 여기서 DriverManger를 직접 호출해서 자기 자신 즉 org.h2.Driver 를 등록하는 것을 볼 수 있습니다. public static synchronized Driver load() { try { if (!registered) { registered = true; DriverManager.registerDriver(INSTANCE); } } catch (SQLException e) { DbException.traceThrowable(e); } return INSTANCE; } registerDriver() 메소드를 더 타고 들어가보면 DriverManager의 변수중 하나인 CopyOnWriteArrayList registeredDrivers에 저장되는 것을 확인할 수 있습니다. 아마 MySql, Oracle 등 다른 드라이버들도 각자 이런식으로 하지 않을까 생각합니다! 디버깅 모드를 사용하여 직접 확인해본 것이라 혹시 틀린 부분이 있다면 정정해주세요!

좋아요수
0
댓글수
3
조회수
555