Pernah berpikir untuk memanggil class yang tidak ada didalam classpath aplikasi yang kita buat? Atau mungkin ingin melakukan inisialisasi driver JDBC secara runtime? Mungkin bagi pengguna awal, URLClassLoader adalah class yang asing.
Sebenarnya, mekanisme ClassLoader merupakan mekanisme standar dalam java, namun umumnya ClassLoader berjalan ketika aplikasi akan di-compile atau dijalankan dengan cara membaca ClassPath baik melalui parameter -cp atau -classpath atau melalui MANIFEST.MF didalam jar atau melalui system environment variable CLASSPATH.
Untuk ClassLoader model ini, saya rasa tidak ada pertanyaan atau mungkin bukan menjadi fokus pembahasan pada post kali ini. Pembahasan pada post kali ini lebih menekankan bagaimana cara memindai (Load) suatu java class yang tidak terdapat pada classpath pada saat runtime.....
Penggunaan class URLClassLoader adalah solusinya. Class ini dapat memindai class-class yang berada pada alamat URL tertentu dan bahkan dalam bentuk JAR...
Berikut ini adalah contoh penggunaan URLClassLoader:
try{
URLClassLoader cl=new URLClassLoader(new URL[]{});
cl.addURL(new File("mysql-jdbc-driver.jar").toURI().toURL());
}catch(Exception e){}
Selanjutnya pembuatan instance dari class yang ada berdasarkan nama class yang diinginkan. Berikut caranya
try{
cl.loadClass("com.jdbc.mysql.Driver").newInstance();
}catch(Exception e){}
Selamat mencoba dan berkarya...
Sebenarnya, mekanisme ClassLoader merupakan mekanisme standar dalam java, namun umumnya ClassLoader berjalan ketika aplikasi akan di-compile atau dijalankan dengan cara membaca ClassPath baik melalui parameter -cp atau -classpath atau melalui MANIFEST.MF didalam jar atau melalui system environment variable CLASSPATH.
Untuk ClassLoader model ini, saya rasa tidak ada pertanyaan atau mungkin bukan menjadi fokus pembahasan pada post kali ini. Pembahasan pada post kali ini lebih menekankan bagaimana cara memindai (Load) suatu java class yang tidak terdapat pada classpath pada saat runtime.....
Penggunaan class URLClassLoader adalah solusinya. Class ini dapat memindai class-class yang berada pada alamat URL tertentu dan bahkan dalam bentuk JAR...
Berikut ini adalah contoh penggunaan URLClassLoader:
try{
URLClassLoader cl=new URLClassLoader(new URL[]{});
cl.addURL(new File("mysql-jdbc-driver.jar").toURI().toURL());
}catch(Exception e){}
Selanjutnya pembuatan instance dari class yang ada berdasarkan nama class yang diinginkan. Berikut caranya
try{
cl.loadClass("com.jdbc.mysql.Driver").newInstance();
}catch(Exception e){}
Selamat mencoba dan berkarya...
Comments