Tôi cần kiểm tra kết nối JDBC với cơ sở dữ liệu. Mã java để làm điều đó phải đơn giản như:Cách sử dụng trình điều khiển JDBC từ một vị trí tùy ý
DriverManager.getConnection("jdbc connection URL", "username", "password");
Trình quản lý trình điều khiển sẽ tra cứu trình điều khiển thích hợp cho URL kết nối đã cho. Tuy nhiên tôi cần để có thể tải trình điều khiển JDBC (jar) khi chạy. I. Tôi không có trình điều khiển JDBC trên classpath của ứng dụng java chạy đoạn mã trên.
Vì vậy, tôi có thể tải trình điều khiển sử dụng mã này, ví dụ:
URLClassLoader classLoader = new URLClassLoader(new URL[]{"jar URL"}, this.getClass().getClassLoader());
Driver driver = (Driver) Class.forName("jdbc driver class name", true, classLoader).newInstance();
Nhưng sau đó người quản lý tài xế vẫn không nhặt nó lên như tôi không thể nói nó mà classloader để sử dụng. Tôi đã thử thiết lập trình nạp lớp ngữ cảnh của luồng hiện tại và nó vẫn không hoạt động.
Bất kỳ ai có ý tưởng nào về cách tốt nhất để đạt được điều đó?
Có lý do chính đáng khiến bạn không có tài xế trên đường dẫn lớp không? –
Có. Ứng dụng có thể kết nối với nhiều cơ sở dữ liệu. Hơn nữa tôi không thể bó tất cả các trình điều khiển vì lý do cấp phép. Điều tôi muốn đạt được là một hộp thoại đơn giản để người dùng tải bình trong khi ứng dụng đang chạy. – SaM
Ở đó tôi đã suy nghĩ như một nhà phát triển phía máy chủ một lần nữa ... :) –