首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > Java > 代码,我回来了:P
【标  题】:代码,我回来了:P
【关键字】:
【来  源】:http://blog.csdn.net/starshus/archive/2006/08/05/1023443.aspx

代码,我回来了:P

好久没有写blog了。好象只要一放假,我就没有心情写blog,大概是现在太忙了吧:P

现在在bstek做实习生,看现在的情况来看的话,我可能做研发,这是我最有兴趣的,我想研发
应该是所有喜欢编程的朋友最喜欢的事了吧。做自己的事,总是不会觉得累;相反,如果是做自己
没有兴趣的或者枯燥乏味的工作,每天晚上睡10个小时白天都会犯困。

还有一个好消息,我们经理把他以前用的笔记本给我用,可以带回家的。感觉太爽了。。。

这个星期是在编程中度过的,好久没有写代码了,有点手生,但是还是完成了任务:)

技术笔记:
昨天写了一段代码,不过老是出错,是这样子的:

一、错误代码:
List list = logic.getChildren();

for (Iterator iterator = list.iterator(); iterator.hasNext();){
    A a = (A)iterator().next();
           
    if(aIsUseFul){
        doXXX(a);
               
        continue;
    }
    iterator.remove(a); //throw Exception!!!
}

看来遍历一个List时,不能对它进行remove或add。呵呵,写在这里,记下来。

二、TreeView选择对象类型的判断:
还有就是jface中的TreeView:

它的getSelection方法返回的IStructuredSelection并不是我们的model,而是一个
数据集合,所以用它的类型来和model比较是不会一样的。
可以这样写:

IStructuredSelection selection= (IStructuredSelection)viewer.getSelection();
if (selection.size() == 1) {
    Object element= selection.getFirstElement();
    if (element instanceof DataSet) {
        ((AddColumnAction)addColumnAction).setDataSet((DataSet)element);
        addColumnAction.setEnabled(true);
    }else
        addColumnAction.setEnabled(false);
}
好久没写插件了,好多都忘了呵呵。

三、引入第三方包:
有一个比较重要的,就是在做eclipse插件时,如果引入第三方包的设置问题。

如果一般的包,用以前《RCP》里讲的方法,新建一个Plug-in from existing JAR就ok了。

但是如果是象log4j,commons包里的digester,这样做就不行了,会抛出许多
ClassNotFoundExceptions 和 NoClassDefFoundErrors。因为它们用到了java的反射机制,
而它们的classloader不能访问到我们的类。

解决办法非常简单,eclipse 3.2的plugin.xml编辑器里就能搞定:

1.先在project属性里找到Java Build Path,在Libraries面板中加入第三方jar文件,然后在
Order and Export中选择这些包。

2.回到plugin.xml编辑器,在runtime面板中的Exported Package中添加所有包。
然后在右下角的Classpath中加入第三方jar文件就ok了。

四、解析xml文件
commons包中的digester包非常好用:P

这个星期写了个eclipse小插件,主要是通过UI来编辑xml配置文件。
发几张截图上来。
struts-ActionForm:reset()详解:【上一篇】
设计模式之WeakReferences:【下一篇】
【相关文章】
没有相关文章
【随机文章】
  • 使用Samba时的防火墙(iptables)配置
  • Composite UI Application Block - December 2005 Release
  • IBM Linux
  • C#快速排序类
  • 全国计算机等级考试二级FoxBASE+程序设计要求
  • Linux启动全线提速法
  • 一个图形界面的俄罗斯方快c源码
  • AJAX:Getting Started(中文)
  • 传奇世界 1.72版新地图各地爆物,爆率攻略
  • 用PHP制作静态网站的模板框架(二)
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.