मुझे डेटाबेस में जेडीबीसी कनेक्शन का परीक्षण करने की आवश्यकता है। ऐसा करने के लिए जावा कोड जितना सरल होना चाहिए:एक मनमानी स्थान से जेडीबीसी ड्राइवर का उपयोग कैसे करें
DriverManager.getConnection("jdbc connection URL", "username", "password");
चालक प्रबंधक दिए गए कनेक्शन URL के लिए उपयुक्त ड्राइवर को देखेगा। हालांकि मुझे रनटाइम पर जेडीबीसी ड्राइवर (जार) लोड करने में सक्षम होना चाहिए। मेरे पास जावा एप्लिकेशन के क्लासपाथ पर जेडीबीसी ड्राइवर नहीं है जो उपरोक्त कोड के स्निपेट चलाता है।
तो मैं उदाहरण के लिए, इस कोड का उपयोग लोड कर सकते हैं चालक:
URLClassLoader classLoader = new URLClassLoader(new URL[]{"jar URL"}, this.getClass().getClassLoader());
Driver driver = (Driver) Class.forName("jdbc driver class name", true, classLoader).newInstance();
लेकिन तब ड्राइवर प्रबंधक अभी भी यह लेने नहीं होगा के रूप में मैं इसे नहीं बता सकता जो classloader उपयोग करने के लिए। मैंने वर्तमान थ्रेड के संदर्भ क्लासलोडर को सेट करने का प्रयास किया और यह अभी भी काम नहीं करता है।
किसी को भी इसे प्राप्त करने का सबसे अच्छा तरीका है?
क्या कोई अच्छा कारण है कि आपके पास क्लासपाथ पर ड्राइवर नहीं है? –
हां। एप्लिकेशन कई डेटाबेस से कनेक्ट कर सकते हैं। इसके अलावा मैं लाइसेंसिंग कारणों के लिए सभी ड्राइवरों को बंडल नहीं कर सकता। जो मैं प्राप्त करना चाहता हूं वह उपयोगकर्ता के लिए जार लोड करने के लिए एक साधारण संवाद है, जबकि एप्लिकेशन चल रहा है। – SaM
वहां मैं एक सर्वर-साइड डेवलपर की तरह सोच रहा था ... :) –