`
qinjingkai
  • 浏览: 259854 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

任意路径下的加载类

阅读更多

  说到通过发射获得类的信息大家自然想到了用Class.forName("xxxxx.xxx.xx");但是这种方法只能加载已经加载到 jvm的类;那么如果类没有被加载到jvm,而现在又要获得一个类的信息,而且该类可能位于任何路径,那应该如果做呢?方法是利用URLClassLoader的loadClass方法;demo路径如下:

 

public static void main(String[] args) {
		
		File file=new File("D:/temp");
		URL url=null;
		try {
			url = file.toURL();
			System.out.println("url--"+url.getPath());
			URL[] urls={url};
			URLClassLoader classLoader=new URLClassLoader(urls);
			Class class1=classLoader.loadClass("com.skywin.mps.web.servlet.SpServlet");
		    System.out.println("ClassName"+class1.getName());
		    
		    Class paramClass[]={};
		    Method methods[]=class1.getDeclaredMethods();
		    for (int i = 0; i < methods.length; i++) {
				Method tm=methods[i];
		    	System.out.println(tm.getName());
			}
		} catch (MalformedURLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SecurityException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} 
		
		
	}

 前提是把上述的spservlet的class文件(包括包结构)放到d盘的temp目录下

分享到:
评论

相关推荐

    程序间耦合.docx

    * ClassPathXmlApplicationContext:它可以加载类路径下的配置文件,要求配置文件必须在类路径下。不在的话,加载不了。(更常用) * FileSystemXmlApplicationContext:它可以加载磁盘任意路径下的配置文件(必须有...

    实体类生成器

    在程序左侧会显示连接的数据库列表,选择要操作的数据库,会自动加载该数据库下的表信息。 4.选择要操作的表,在右侧会显示该表的表中的字段信息 5.程序自动处理数据库中的书库类型,将其转换为程序相对应的可以...

    QQ头像连连看-带地图生成器--压缩资源版(上传大小限制,实在是没办法)part2

    使用MFC封装图片文件管理类以实现任意格式图片的加载、显示等图片操作;封装波形声音文件(wav文件)和MP3文件的加载、播放、暂停、定位等声音文件的操作等。 注:此上传本版为压缩资源版,原始版100M以上(实在...

    QQ头像连连看-带地图生成器--压缩资源版(上传大小限制,实在是没办法)part1

    使用MFC封装图片文件管理类以实现任意格式图片的加载、显示等图片操作;封装波形声音文件(wav文件)和MP3文件的加载、播放、暂停、定位等声音文件的操作等。 注:此上传本版为压缩资源版,原始版100M以上(实在...

    精易模块[源码] V5.15

    13、修正“类_系统信息”重写该类,在部分系统下不兼容及闪退问题,感谢易友【@longfeng0008】反馈。 14、改善“程序_禁止重复运行”当标识为空时,默认为自身路径,代码由易友【@wjt741106】提供。 15、改善“普通...

    JAVA_API1.6文档(中文)

    java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口。 java.security.interfaces 提供的接口用于生成 RSA Laboratory Technical Note PKCS#1 中定义的 RSA(Rivest、Shamir 和 ...

    rpg:角色扮演游戏,技术LWJGL

    rpg 角色扮演游戏,技术LWJGL ...下载lwjgl-2.9.1包解压后放在任意路径下,我是放在G:\shadowquest\lwjgl-2.9.1 进入RPG类运行main函数,运行时要配置加载动态链接库,如下 点击run-as-&gt;Run Configu

    java api最新7.0

    java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口。 java.security.interfaces 提供的接口用于生成 RSA Laboratory Technical Note PKCS#1 中定义的 RSA(Rivest、Shamir 和 ...

    如何编写批处理文件批处理文件批处理文件

    显示的注释提示您将另一张磁盘放入驱动器 A 时,pause 命令会使程序挂起,以便您更换磁盘,然后按任意键继续处理。 6.Call 命令 从一个批处理程序调用另一个批处理程序,并且不终止父批处理程序。call 命令接受用作...

    JavaAPI1.6中文chm文档 part1

    java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口。 java.security.interfaces 提供的接口用于生成 RSA Laboratory Technical Note PKCS#1 中定义的 RSA(Rivest、Shamir 和 ...

    JDK_1_6 API

    java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口。 java.security.interfaces 提供的接口用于生成 RSA Laboratory Technical Note PKCS#1 中定义的 RSA(Rivest、Shamir 和 ...

    JavaAPI中文chm文档 part2

    java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口。 java.security.interfaces 提供的接口用于生成 RSA Laboratory Technical Note PKCS#1 中定义的 RSA(Rivest、Shamir 和 ...

    [Java参考文档]

    java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口。 java.security.interfaces 提供的接口用于生成 RSA Laboratory Technical Note PKCS#1 中定义的 RSA(Rivest、Shamir 和 ...

    [Java参考文档].JDK_API 1.6

    java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口。 java.security.interfaces 提供的接口用于生成 RSA Laboratory Technical Note PKCS#1 中定义的 RSA(Rivest、Shamir 和 ...

    Java 1.6 API 中文 New

    java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口。 java.security.interfaces 提供的接口用于生成 RSA Laboratory Technical Note PKCS#1 中定义的 RSA(Rivest、Shamir 和 ...

    day021-反射和注解笔记和代码.rar

    loader:可以指定一个类加载器加载字节码文件 2. 全限定类名.class 3. 对象名.getClass() Class类中方法newInstance():创建当前字节码对象(只能调用无参且是public修饰的构造...

    Javascript 对cookie操作详解及实例

    js 操作 cookie 的方法 cookie cookie,有时候也用其复数形式Cookies,指某些网站为了辨别用户身份,进行session跟踪而储存在用户本地终端上的数据(经常...另一个重要张合是“购物车”之类处理。用户可能会在一段时间

Global site tag (gtag.js) - Google Analytics