Beans Development Kit (BDK)分析(三)

王朝java/jsp·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

三.模块介绍

BDK的主要模块分为:设计面板,工具栏,属性浏览器,跟踪器和工具类。前三者主要是界面的表示,工具类是一个包含封装,Jar文件加载,类编译,事件监听等等。

启动过程

从BDK的启动过程可以了解各个模块的启动顺序,和初始化过程,了解各项资源的配置,以及模块之间的配合。

这是BeanBoxFrame的类图,由Jbuilder8自动产生的UML图。

通过源代码分析,可以得到以下流程图:

1. BeanBoxFrame的初始化:

BeanBoxFrame的界面如下:

通过源代码分析,可以得到以下流程图:

2. ToolBox的初始化

ToolBox的界面如下:

通过源代码分析,可以得到工具条的初始化主要是以下代码来实现:

if (! BeanBoxFrame.getQuickStart()) {

Vector jarNames = getJarNames();

for (int i = 0; i < jarNames.size(); i++) {

String name = (String)jarNames.elementAt(i);

try {

addBeansInJar(name);

} catch (Throwable th) {

System.err.println(name + ": jar load failed: " + th);

th.printStackTrace();

}

}

}

// Vector jarNames = getJarNames();

private static Vector getJarNames() {

File cwd = new File(System.getProperty("user.dir"));

File pwd = new File(cwd.getParent());

File jars = new File(pwd, "jars");

if (! jars.isDirectory()) {

System.err.println(jars+" is not a directory!!");

}

Vector result = new Vector();

String names[];

names = jars.list(new FileExtension(".jar"));

for (int i=0; i<names.length; i++) {

result.addElement(jars.getPath() + File.separatorChar + names[i]);

}

names = jars.list(new FileExtension(".JAR"));

for (int i=0; i<names.length; i++) {

result.addElement(jars.getPath() + File.separatorChar + names[i]);

}

// addBeansInJar(name);

synchronized void addBeansInJar(String jarFile) throws IOException {

JarLoader.loadJarDoOnBean(jarFile, helper);

doLayout();

}

3. BeanBox的初始化

通过源代码分析,可以得到以下流程图:

4. PropertySheet的初始化

PropertySheet的界面如下:

通过源代码分析,可以得到的setTarget方法的流程图:

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有  導航