读书人

add jar to classpath on runtime :动

发布时间: 2012-11-06 14:07:00 作者: rapoo

add jar to classpath on runtime :动态载入java类。(相当有用)

(哈哈,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());
?}

}

读书人网 >软件架构设计

热点推荐