(哈哈,50多浏览量, 看的人挺多的啊。)
当你的系统不允许停机。 而又必须新的功能必须实现。 以load JDBC驱动为例, 下面是个好办法。
(可以在系统中预留上传jar文件的功能,再指定实现接口及实现类的路径 从而为系统的扩展性提供底层保障)
package p1;
import java.net.URL;
import java.net.URLClassLoader;
public class C1 {
/**
* @param args
* @throws Exception
*/
public static String path = "file:\\F:\\stock_exp\\lib\\mysql-connector-java-5.0.5-bin.jar";
public static void main(String[] args) throws Exception {
URL url = new URL(path);
URLClassLoader myClassLoader = new URLClassLoader(new URL[] {url} ,
Thread.currentThread().getContextClassLoader());
Class<?> s = myClassLoader.loadClass("com.mysql.jdbc.Driver");
java.sql.Driver conn = (java.sql.Driver)s.newInstance();
System.out.println(conn.toString());
}
}