大梦想家

5年开发工程师,2年实施经理,X年售前顾问,......
数据加载中……

最近迷上了爬山

最近迷上了爬山,N久都没有更新过Blog~惭愧啊。最近打算写一遍关于Gantt控件的东西。请专注吧~

posted @ 2007-08-28 16:26 阿南 阅读(485) | 评论 (0)编辑 收藏
SWT中使用JFreeChart(无需SWT_AWT)

     摘要:     好像从1.03开始Jfc就已经提供了在SWT中使用JFC的专用包和类,只是没有人写这些东西而已~今天我就贴一些Demo,以后再也不用SWT_AWT了~   1/**//* ===========================================================  2 *...  阅读全文

posted @ 2007-08-21 09:22 阿南 阅读(3951) | 评论 (2)编辑 收藏
SWT中使用JFreechart(例子)

     摘要:   1package com.glnpu.dmp.test;  2  3import java.awt.Color;  4import java.awt.Font;  5import java.awt.Frame;  6import&nbs...  阅读全文

posted @ 2007-08-20 15:59 阿南 阅读(3481) | 评论 (5)编辑 收藏
利用JS获取IE客户端IP及MAC的实现

     在C/S中取得客户端的MAC地址简单,就算JAVA再麻烦也是简单的,但是模式推至B/S结构,就麻烦了~有时候MAC地址比IP地址更真实!老板不知道哪里听到的MAC地址不能改,IP地址能随便改的谣言,非要加这个功能,兄弟们一定很头大吧~往下看,能解决,就是使用JS来调用ActiveX来交互~

 1<HTML><HEAD><TITLE>WMI Scripting HTML</TITLE>
 2<META http-equiv=Content-Type content="text/html; charset=gb2312">
 3<SCRIPT language=JScript event="OnCompleted(hResult,pErrorObject, pAsyncContext)" for=foo>
 4document.forms[0].txtMACAddr.value=unescape(MACAddr);
 5document.forms[0].txtIPAddr.value=unescape(IPAddr);
 6document.forms[0].txtDNSName.value=unescape(sDNSName);
 7//document.formbar.submit();
 8
</SCRIPT>
 9
10<SCRIPT language=JScript event=OnObjectReady(objObject,objAsyncContext) for=foo>
11if(objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true)
12{
13if(objObject.MACAddress != null && objObject.MACAddress != "undefined")
14MACAddr = objObject.MACAddress;
15if(objObject.IPEnabled && objObject.IPAddress(0!= null && objObject.IPAddress(0!= "undefined")
16IPAddr = objObject.IPAddress(0);
17if(objObject.DNSHostName != null && objObject.DNSHostName != "undefined")
18sDNSName = objObject.DNSHostName;
19}

20
</SCRIPT>
21
22<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
23<BODY>
24<OBJECT id=locator classid=CLSID:76A64158-CB41-11D1-8B02-00600806D9B6 VIEWASTEXT></OBJECT>
25<OBJECT id=foo classid=CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223></OBJECT>
26<SCRIPT language=JScript>
27var service = locator.ConnectServer();
28var MACAddr ;
29var IPAddr ;
30var DomainAddr;
31var sDNSName;
32service.Security_.ImpersonationLevel=3;
33service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration');
34
</SCRIPT>
35
36<FORM id=formfoo name=formbar action=NICPost.asp method=post><INPUT value=00:05:5D:0E:C7:FA name=txtMACAddr> <INPUT value=192.168.0.2 name=txtIPAddr> <INPUT value=typ name=txtDNSName> </FORM></BODY></HTML>
37
核心就是调用了两个系统自带的ActiveX进行交互~
但是要注意,1,不能跨浏览器!2.调用的时候会有IE提示~还是慎用的好!

posted @ 2007-08-16 17:01 阿南 阅读(8356) | 评论 (5)编辑 收藏
java访问注册表

    今天碰到了需要访问注册表的问题,索性研究一下下~JDK1.4开始,sun就已经提供了访问注册表的jar包了,但是好像大家都不是很感兴趣~没有几个人说它好用的。
    google得到Windows Registry~好东西,底层使用jni直接访问WIN32下的注册表~可以实现对整个注册表的完全掌控,可增可减~呵呵出了问题不管我事!
     本着好东西要分享的原则,贡献一下搜索的成果物!
     http://trustice.com/java/jnireg/

posted @ 2007-08-16 15:25 阿南 阅读(945) | 评论 (0)编辑 收藏
JWS(Java Web Start)高级应用

    JWS(Java Web Start)高级应用!
    咱不写什么快速构建JWS发布,什么轻松入门JWS一类的水贴~写就写点高级应用~我还是觉得写大家都会的技术不叫原创,原创是创造大家不知道的东西~
    JWS古以有之,但是由于WEB的盛行,还得JWS不被人重视~其实JWS还是很好的东西,SUN还是在苦心的经营他~一次又一次的更新,一次又一次的升级,使用JWS启动JAVA桌面应用程序越来越快,部署起来也越来越方便了~
    首先向想要用JWS来部署JAVA应用程序的朋友推荐JRE6.0,它比JRE5.0改进了很多地方,其中最好的一点是,JRE6.0对JAR文件进行了压缩处理,而JRE5.0则是直接下载JAR文件到本地,好处就是如何客户用了JRE6.0那么他们能难拿到我们开发出来的JAR文件,更不要说做反编译了~而且对JAR文件进行处理,大大加快了JAVA应用程序的启动速度。
   其次就是进入正题!使用JWS发布JAVA应用程序应该算是小儿科了,JWS的优势就是可以每次启动的时候去服务器上动态的更新JAR文件,但是有一点JNLP文件如何更新?如果我修改了JWS的描述文件JNLP文件,JWS怎么去更新东东啊?
    我们都知道JWS有个高速缓冲,他把要启动的东东都放到了高速缓冲中,并记录下JAR文件的修改时间,然后每次使用JNLP通过JWS启动JAVA应用时,他会对比看看服务器上的JAR文件的修改时间是不是已经更新了,如果更新了,他认为JAR文件有更新,然后就下载到本地~但是JNLP文件却一直在本地高速缓冲中放着,他是不会更新的~
   处理办法就是使用SUN为我们准备好的JnlpDownloadServlet来做~JnlpDownloadServlet其实一直在我们本地,他就放在JDK下面,具体怎么用还是请参阅JWS的开发手册吧!
   它解决的原理其实是使用JNLP里面的version这个属性~如果不使用JnlpDownloadServlet来处理,version这个属性根本无用,而且还会报错~只有用了JnlpDownloadServlet以后version才能发挥作用,我们可以给JNLP文件打上version,然后每次如果有JNLP更新,那么只要更新version的内容就可以了,而且在客户端的JWS管理器中,会对每一个version进行记录!非常好用~但是需要非常仔细的配置version~还是比较痛苦的一件事情!
   在八卦一下JAVAEYE,麻烦的要死~问个问题没有人回答,还评我为新手~开网站的都是爷~爷不去了!

posted @ 2007-08-10 22:52 阿南 阅读(5648) | 评论 (2)编辑 收藏
终于爬到前100了~

庆祝一下,感谢大家多日以来的支持,我会再接再厉,再创佳绩!
留贴庆祝~无内容!

posted @ 2007-08-09 09:00 阿南 阅读(374) | 评论 (2)编辑 收藏
给玩RUBY的朋友们道个歉

    闲来无聊,一边开着妖精宝宝(传说中的美女~http://blog.sina.com.cn/wings)的Blog听音乐,一边读读《Programming Ruby》,享受哦!
    前一段时间写了篇Blog,推了一下Python,说了一下Ruby,~给大家心理上造成了不少的创伤~偶现在醒悟了,不管是什么,它都属于动态语言,各有各的好处~各有各的优势~一样各有各的害处~。
    ROR现在这么火,一定有它的道理,绝对不是空穴来风的~和Java相比Ruby无疑,灵活了许多,简洁了许多~那放荡不经的语法风格,那吊儿郎当的定义方式,确实让我着迷~写多了JS的朋友再写JAVA,一定恨死了处处的类型定义~一样的写了几次attr_reader以后,我看见满屏幕的getter方法就想吐~看到New对象就像自杀~
   玩笑,玩笑,其实也没有那么痛苦,毕竟JAVA是强类型语言,处处保证安全,Ruby等弱类型语言,注重的是开发速度~编程新手连类,实例的关系都搞不清,还是不好玩Ruby的好~小心葬送自己!还有就是放荡不经的语法风格,是一人一个放法~没有多少经验的哥们儿,看上几个人写的,一定会死的,更不要说维护了~一样的代码,N个人N种写法~
   再说说书,上星期去了一下书店,果然N多ROR的书上架了,老板跟我说,很不爽,没有多少人知道这东西,自己也是听说网上炒的火,进了卖不出去~从此可以看出ROR还在整个技术浪潮的初期,还需要更多的人和公司努力推~什么都不说了,是好东西就用,是烂东西,大家都不要看了~
   最让我郁闷的就是《Programming Ruby》中文版,卖99个大洋~怎么不去抢啊~!!!

posted @ 2007-08-05 12:23 阿南 阅读(987) | 评论 (6)编辑 收藏
Eclipse3.3+JWS

   上次把同事研究的用JWS发布EclipseRCP应用的预言文档发到Bolg上了,那个版本是用于Eclipse3.2.2-的,到了Eclipse3.3以后有不少东东都发生了变化。特此留文一篇,记录一下。
   先看不同在哪里:
  1.Eclipse3.3的启动方式不同于Eclipse3.2.2-的版本;
  2.Eclipse3.3加入了对Vista的支持,所以SWT有所变化;

先看第一个不同对我们的影响:
    没有了startup.jar了~对我们的形象不小哦!看看没有了Startup.jar以后启动Eclipse是如何实现的:

http://www.duduwolf.com/wiki/2007/393.html
最后要说明的是,这里用Execwait启动java命令,而不是Exec。区别是Exec马上退出Java Launcher.exe的进程,而Execwait不退出,也就是说用Execwait在关闭程序之前,有两个活动进程,Java Launcher.exe和javaw.exe。这正是eclipse3.3之前的EXE启动器的情况,比如Eclipse3.2启动后,任务管理器里有eclipse.exe和javaw.exe两个进程。使用Execwait的原因是Exec在Windows 2000下出现的一个问题,在使用程序的过程中,如果用户改变了桌面属性,比如背景图,系统就挂掉了。Eclipse在3.3之后改成了使用Java的Invocation Interface启动startup.jar。详细的情况请看org.eclipse.equinox.executable项目

 

    Eclipse的启动彻底被org.eclipse.equinox.launcher_1.0.0.v20070606.jar接管了~org.eclipse.equinox.launcher_1.0.0.v20070606.jar的包结构基本和Startup.jar基本一样但是还是有区别的。
    所以根据我上一次文章的所说的需要Startup.jar了~不需要再让feature下放东东了~加认证什么都一样了~
需要修改生成的JNPL文件,主要需要修改一下两个地方:
1<jar href="plugins/org.eclipse.equinox.launcher_1.0.0.v20070606.jar"/>
 <application-desc main-class="org.eclipse.equinox.launcher.WebStartMain">
    启动Jar文件以及启动类~
支持了Vista以后对我们的影响:
    生成的org.eclipse.rcp_3.3.0.v20070607-8y8eE8NEbsN3X_fjWS8HPNG.jnlp中被多包含*wpt*.jar的引用,这些是在我们下载的Eclipse3.3里面没有的~但是还是生成了引用,这个应该是pdt的BUG~Eclipse的BUG LIST上面已经提到了~
    如果非要在Vista上跑,就自己找找吧·如果不是,那么直接删掉就好了~

一定要注意第一个问题~没有了Startup.jar以后,千万不要把org.eclipse.equinox.launcher_1.0.0.v20070606.jar当Startup.jar用,在外面也放一份~启动的时候JWS会包错的,会说JAR包重复!

posted @ 2007-08-02 16:18 阿南 阅读(1666) | 评论 (0)编辑 收藏
SWT---nebula_cdatetime_0.9.0中文版

今天修改了一下nebula_cdatetime_0.9.0,把nebula_cdatetime_0.9.0做了一下汉化,特地放到blog上,供大家使用;
nebula_cdatetime_0.9.0中的时间和日期选择器比SWT3.4的日期选择要好用一些,这里汉化的主要是操作界面上的英文,星期和月份的汉化是和Locale有关的,使用时代码如下:

1        workTimeDate = new CDateTime(container, CDT.BORDER | CDT.DROP_DOWN);
2        workTimeDate.setLocale(Locale.CHINA);
3        workTimeDate.setSelection(null);
http://www.blogjava.net/Files/leeguannan/nebula_cdatetime_0.9.0.rar

posted @ 2007-07-31 14:21 阿南 阅读(1715) | 评论 (1)编辑 收藏
仅列出标题
共13页: First 上一页 3 4 5 6 7 8 9 10 11 下一页 Last