- 浏览: 144638 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
hacker_zxf:
最近再去看quartz实现,job都是new出来的,如果需要自 ...
Quartz--JAVA计划任务 -
hacker_zxf:
quartz 的扩展型做的不好,本来试图将表达式扩展成支持毫秒 ...
Quartz--JAVA计划任务 -
piaoxue_x:
嗯,看看。。。。貌似不错,谢谢了。。。
Quartz--JAVA计划任务 -
673341766:
麻烦你看一下 红色的信息是报错好吧.
Quartz--JAVA计划任务 -
helong0904:
...
spring quartz配置定时器
首先,当知道当前需要的类所在的包地址,例如:/com/zhouxf/jarread/dos/impl 这样一个目录,当项目被打包成test.jar ,你如何获取到这个包地址下的所有的class文件呢。
一般要获取都是在某一个类里面,例如factory或者相关的manager里面。在相对的目录中获取所需要的class文件,并且实例化这些class的过程。
例子如下:
首先定义一个球的接口:
然后实现接口
然后打包代码test.jar, 把他导入到工程。
下面写一个类来读取jar包;
这样,就能打印出
一般要获取都是在某一个类里面,例如factory或者相关的manager里面。在相对的目录中获取所需要的class文件,并且实例化这些class的过程。
例子如下:
首先定义一个球的接口:
public interface Ball { /** * 输出球类型 */ void getName(); }
然后实现接口
public class BasketBall implements Ball { public void getName() { // TODO Auto-generated method stub System.out.println("BasketBall........."); } } public class FootBall implements Ball { public void getName() { // TODO Auto-generated method stub System.out.println("FootBall........."); } }
然后打包代码test.jar, 把他导入到工程。
下面写一个类来读取jar包;
/** * 读取类,然后输出相关信息 * * @author xiaofeng.zhouxf */ public class JarReader { private Map map; private final String pointClass = ".class"; private final String slash = "/"; private final String point = "."; private final String javaSeparator = "\\\\"; private final String packagePath = "/com/zhouxf/jarread/dos/impl"; private final String jarName = "test.jar"; ; public void test() throws IOException, InstantiationException, IllegalAccessException, ClassNotFoundException { // 用来存放包下class文件 map = new HashMap(); // 取得资源所在目录 URL url = this.getClass().getResource(packagePath); String resourcePath = url.getFile(); resourcePath = resourcePath.substring(1); int index = resourcePath.indexOf(packagePath); String diskPath = resourcePath.substring(0, index); resourcePath = resourcePath.replace(slash, javaSeparator); diskPath = diskPath.replace(slash, javaSeparator); // 取得jar包对象 JarFile file = new JarFile((diskPath + javaSeparator + jarName)); // 判断和获取jar包中的entry Enumeration<JarEntry> entries = file.entries(); while (entries.hasMoreElements()) { JarEntry entry = entries.nextElement(); String entryName = entry.getName(); // System.out.println("entryName:" + entryName); if (entryName.indexOf(packagePath.substring(1)) != -1) { String classPath = entryName.substring(0, entryName.indexOf(pointClass)).replace(slash, point); Ball ball = (Ball) Class.forName(classPath).newInstance(); ball.getName(); } } } public static void main(String... strings) { JarReader reader = new JarReader(); try { reader.test(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InstantiationException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalAccessException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
这样,就能打印出
BasketBall......... FootBall.........
发表评论
-
JAVA 应用监控
2011-11-17 15:09 1104监控一个应用可以有很多好处,xxxxx 这里就不说了 不同应 ... -
顺序打印ABC,连续打10次
2011-06-14 22:23 1554import java.util.concurrent.ato ... -
JVM内存模型以及垃圾回收教程概述【转】
2011-01-18 15:21 924摘自:http://www.zhixing123. ... -
JAVA并发编程(一) 并发基础
2011-01-05 19:32 9404. 组合对象线程安全 4.1 设计线程安全的类 使用公共 ... -
[转]JAVA语言的反射和内省
2010-11-25 12:04 727转自: http://blog.csdn.net/ ... -
java 强、软、弱、虚引用
2010-11-18 22:54 9861.强引用 本章前 ... -
计算机常识:字符编码简介——ASCII、Unicode、UTF-8、GB2312
2010-11-03 14:40 1220字符编码简介:ASCII,Unicode,UTF-8,GB23 ... -
Apache Log4j配置说明
2010-10-25 21:00 638Apache Log4j配置说明 摘自Blog: http:/ ... -
初試 cglib
2010-04-25 21:00 725public class Man { public S ... -
java.lang.reflect 动态代理
2010-04-25 20:01 828public interface IReport { ... -
META-INF中的MANIFEST.MF的作用
2010-03-28 18:21 1218MANIFEST中的配置信息共有下面几类:一. 一般属性1. ... -
JAVA的容器---List,Map,Set
2009-12-22 22:09 680JAVA的容器---List Map Set Coll ... -
annotation 例子
2009-11-28 05:29 939@Retention : RetentionPolicy. S ... -
JAVA 同步 (一)
2009-11-09 21:36 628永远只能更新对象的成员变量时加锁 永远只能在访问有可能被更新对 ... -
JAVA中枚举(Enum)的系列文章 - 反向查找、总结
2009-05-12 14:00 1814转自:http://www.sinojava.co ... -
反射例子
2009-04-20 20:18 990定义一个用户,作为被反射对象; public class Us ... -
两个反射的小例子
2009-04-15 16:04 897HashMap map = new HashMap(); ... -
utf转UnicodeBig
2008-12-23 20:06 911今天遇到一个奇怪的问题,代码如下: public ... -
ResourceBundle例子
2008-12-22 15:41 1459public class TestResourceBundle ... -
eclipse new class注释模板
2008-12-19 13:10 1384/** * @{#} ${file_n ...
相关推荐
poi读取Exceljar包和例子 poi-2.5.1-final-20040804.jar poi-contrib-2.5.1-final-20040804.jar poi-scratchpad-2.5.1-final-20040804.jar ReadXL.java
jar包里读取图片.rar ,,自己写的例子,希望对你有帮助
Java使用poi jar包读取以及web浏览器端下载excle文件的测试例子 Java使用poi jar包读取以及web浏览器端下载excle文件的测试例子
java读取firebird数据库例子 jaybird-2.1.6.jar jaybird-full-2.1.6.jar jaybird-pool-2.1.6.jar
* 导入的jar包 * * poi-3.8-beta3-20110606.jar * * poi-ooxml-3.8-beta3-20110606.jar * * poi-examples-3.8-beta3-20110606.jar * * poi-excelant-3.8-beta3-20110606.jar * * poi-ooxml-schemas-...
poi 读取03和07excel文档的小例子,含jar包。
java生成二维码、读取二维码的jar包,可以直接使用,例子网上搜即可
这是一个POI读取word 2003 和 word 2007的例子 是一个Eclipse工程 下载后直接导入工程 运行 src 目录下的 Test java 类即可 这个 rar 包中包含着 POI 读取word 2003 和 word 2007 所需要的 jar 包 也有需要读取的 ...
java excel HSSFWorkbook的jar包,具体的例子请看我的博客,读取多个sheet和单个sheet
JSON简介 JSON的全称是JavaScript Object ...下面是一个JSON文件的例子: { "code": "1000", "info: "成功", "owner": { "first": "Gatsby", "last": "Newton" }, "component": ["engine", "brake"] }
jxl-2.6.jar包和常用方法例子 Java Excel是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容、创建新的Excel文件、更新已经存在的Excel文件。使用该API非Windows操作系统也可以通过纯Java应用来处理Excel...
亲测可用 压缩包有测试代码 将压缩将jar包配置好build path 后可以直接测试带有经纬度信息的图片 另外还可以获得图片的高度、宽度、成像时间等等 。
第一次用jxl.jar读取excel的例子, 高手勿看。
下载javacsv-2.0.jar ,根据例子进行读写CSV操作。
java读取硬盘序列号,包括jar包。和例子。
java 读取PDF JAR包 例子 按照里面的例子做,配合提供的JAR包,JAVA操作PDF很简单的说
本资源分别用了四种方式:原生DOM、JDOM、SAX和DOM4J实现的对xml文件的读取,另外还有对excel文件读取与保存的例子,并且资源带有jdom.jar、poi-ooxml.jar和poi-3.7jar包
freemarker.jar freemarker架包 freemarker生成excel、word、html、xml简单例子freemarker生成excel、word、html、xml简单例子
java读取grib2文件,使用netcdfAll,内附jar包与例子,netcdfAll-4.3.jar为jdk6版本,netcdfAll-4.6.jar为jdk7版本
下面的blog对该Java项目有详细的描述:...