最近迷上了爬山,N久都沒有更新過Blog~慚愧啊。最近打算寫一遍關(guān)于Gantt控件的東西。請(qǐng)專注吧~
摘要: 好像從1.03開始Jfc就已經(jīng)提供了在SWT中使用JFC的專用包和類,只是沒有人寫這些東西而已~今天我就貼一些Demo,以后再也不用SWT_AWT了~
1/**//* =========================================================== 2 *... 閱讀全文
摘要: 1package com.glnpu.dmp.test; 2 3import java.awt.Color; 4import java.awt.Font; 5import java.awt.Frame; 6import&nbs... 閱讀全文
今天碰到了需要訪問注冊(cè)表的問題,索性研究一下下~JDK1.4開始,sun就已經(jīng)提供了訪問注冊(cè)表的jar包了,但是好像大家都不是很感興趣~沒有幾個(gè)人說它好用的。
google得到Windows Registry~好東西,底層使用jni直接訪問WIN32下的注冊(cè)表~可以實(shí)現(xiàn)對(duì)整個(gè)注冊(cè)表的完全掌控,可增可減~呵呵出了問題不管我事!
本著好東西要分享的原則,貢獻(xiàn)一下搜索的成果物!
http://trustice.com/java/jnireg/
JWS(Java Web Start)高級(jí)應(yīng)用!
咱不寫什么快速構(gòu)建JWS發(fā)布,什么輕松入門JWS一類的水貼~寫就寫點(diǎn)高級(jí)應(yīng)用~我還是覺得寫大家都會(huì)的技術(shù)不叫原創(chuàng),原創(chuàng)是創(chuàng)造大家不知道的東西~
JWS古以有之,但是由于WEB的盛行,還得JWS不被人重視~其實(shí)JWS還是很好的東西,SUN還是在苦心的經(jīng)營(yíng)他~一次又一次的更新,一次又一次的升級(jí),使用JWS啟動(dòng)JAVA桌面應(yīng)用程序越來越快,部署起來也越來越方便了~
首先向想要用JWS來部署JAVA應(yīng)用程序的朋友推薦JRE6.0,它比JRE5.0改進(jìn)了很多地方,其中最好的一點(diǎn)是,JRE6.0對(duì)JAR文件進(jìn)行了壓縮處理,而JRE5.0則是直接下載JAR文件到本地,好處就是如何客戶用了JRE6.0那么他們能難拿到我們開發(fā)出來的JAR文件,更不要說做反編譯了~而且對(duì)JAR文件進(jìn)行處理,大大加快了JAVA應(yīng)用程序的啟動(dòng)速度。
其次就是進(jìn)入正題!使用JWS發(fā)布JAVA應(yīng)用程序應(yīng)該算是小兒科了,JWS的優(yōu)勢(shì)就是可以每次啟動(dòng)的時(shí)候去服務(wù)器上動(dòng)態(tài)的更新JAR文件,但是有一點(diǎn)JNLP文件如何更新?如果我修改了JWS的描述文件JNLP文件,JWS怎么去更新東東啊?
我們都知道JWS有個(gè)高速緩沖,他把要啟動(dòng)的東東都放到了高速緩沖中,并記錄下JAR文件的修改時(shí)間,然后每次使用JNLP通過JWS啟動(dòng)JAVA應(yīng)用時(shí),他會(huì)對(duì)比看看服務(wù)器上的JAR文件的修改時(shí)間是不是已經(jīng)更新了,如果更新了,他認(rèn)為JAR文件有更新,然后就下載到本地~但是JNLP文件卻一直在本地高速緩沖中放著,他是不會(huì)更新的~
處理辦法就是使用SUN為我們準(zhǔn)備好的JnlpDownloadServlet來做~JnlpDownloadServlet其實(shí)一直在我們本地,他就放在JDK下面,具體怎么用還是請(qǐng)參閱JWS的開發(fā)手冊(cè)吧!
它解決的原理其實(shí)是使用JNLP里面的version這個(gè)屬性~如果不使用JnlpDownloadServlet來處理,version這個(gè)屬性根本無用,而且還會(huì)報(bào)錯(cuò)~只有用了JnlpDownloadServlet以后version才能發(fā)揮作用,我們可以給JNLP文件打上version,然后每次如果有JNLP更新,那么只要更新version的內(nèi)容就可以了,而且在客戶端的JWS管理器中,會(huì)對(duì)每一個(gè)version進(jìn)行記錄!非常好用~但是需要非常仔細(xì)的配置version~還是比較痛苦的一件事情!
在八卦一下JAVAEYE,麻煩的要死~問個(gè)問題沒有人回答,還評(píng)我為新手~開網(wǎng)站的都是爺~爺不去了!
慶祝一下,感謝大家多日以來的支持,我會(huì)再接再厲,再創(chuàng)佳績(jī)!
留貼慶祝~無內(nèi)容!
閑來無聊,一邊開著妖精寶寶(傳說中的美女~http://blog.sina.com.cn/wings)的Blog聽音樂,一邊讀讀《Programming Ruby》,享受哦!
前一段時(shí)間寫了篇Blog,推了一下Python,說了一下Ruby,~給大家心理上造成了不少的創(chuàng)傷~偶現(xiàn)在醒悟了,不管是什么,它都屬于動(dòng)態(tài)語言,各有各的好處~各有各的優(yōu)勢(shì)~一樣各有各的害處~。
ROR現(xiàn)在這么火,一定有它的道理,絕對(duì)不是空穴來風(fēng)的~和Java相比Ruby無疑,靈活了許多,簡(jiǎn)潔了許多~那放蕩不經(jīng)的語法風(fēng)格,那吊兒郎當(dāng)?shù)亩x方式,確實(shí)讓我著迷~寫多了JS的朋友再寫JAVA,一定恨死了處處的類型定義~一樣的寫了幾次attr_reader以后,我看見滿屏幕的getter方法就想吐~看到New對(duì)象就像自殺~
玩笑,玩笑,其實(shí)也沒有那么痛苦,畢竟JAVA是強(qiáng)類型語言,處處保證安全,Ruby等弱類型語言,注重的是開發(fā)速度~編程新手連類,實(shí)例的關(guān)系都搞不清,還是不好玩Ruby的好~小心葬送自己!還有就是放蕩不經(jīng)的語法風(fēng)格,是一人一個(gè)放法~沒有多少經(jīng)驗(yàn)的哥們兒,看上幾個(gè)人寫的,一定會(huì)死的,更不要說維護(hù)了~一樣的代碼,N個(gè)人N種寫法~
再說說書,上星期去了一下書店,果然N多ROR的書上架了,老板跟我說,很不爽,沒有多少人知道這東西,自己也是聽說網(wǎng)上炒的火,進(jìn)了賣不出去~從此可以看出ROR還在整個(gè)技術(shù)浪潮的初期,還需要更多的人和公司努力推~什么都不說了,是好東西就用,是爛東西,大家都不要看了~
最讓我郁悶的就是《Programming Ruby》中文版,賣99個(gè)大洋~怎么不去搶啊~!?。?
上次把同事研究的用JWS發(fā)布EclipseRCP應(yīng)用的預(yù)言文檔發(fā)到Bolg上了,那個(gè)版本是用于Eclipse3.2.2-的,到了Eclipse3.3以后有不少東東都發(fā)生了變化。特此留文一篇,記錄一下。
先看不同在哪里:
1.Eclipse3.3的啟動(dòng)方式不同于Eclipse3.2.2-的版本;
2.Eclipse3.3加入了對(duì)Vista的支持,所以SWT有所變化;
先看第一個(gè)不同對(duì)我們的影響:
沒有了startup.jar了~對(duì)我們的形象不小哦!看看沒有了Startup.jar以后啟動(dòng)Eclipse是如何實(shí)現(xiàn)的:
Eclipse的啟動(dòng)徹底被org.eclipse.equinox.launcher_1.0.0.v20070606.jar接管了~org.eclipse.equinox.launcher_1.0.0.v20070606.jar的包結(jié)構(gòu)基本和Startup.jar基本一樣但是還是有區(qū)別的。
所以根據(jù)我上一次文章的所說的需要Startup.jar了~不需要再讓feature下放東東了~加認(rèn)證什么都一樣了~
需要修改生成的JNPL文件,主要需要修改一下兩個(gè)地方:
1
<jar href="plugins/org.eclipse.equinox.launcher_1.0.0.v20070606.jar"/>
<application-desc main-class="org.eclipse.equinox.launcher.WebStartMain">
啟動(dòng)Jar文件以及啟動(dòng)類~
支持了Vista以后對(duì)我們的影響:
生成的org.eclipse.rcp_3.3.0.v20070607-8y8eE8NEbsN3X_fjWS8HPNG.jnlp中被多包含*wpt*.jar的引用,這些是在我們下載的Eclipse3.3里面沒有的~但是還是生成了引用,這個(gè)應(yīng)該是pdt的BUG~Eclipse的BUG LIST上面已經(jīng)提到了~
如果非要在Vista上跑,就自己找找吧·如果不是,那么直接刪掉就好了~
一定要注意第一個(gè)問題~沒有了Startup.jar以后,千萬不要把org.eclipse.equinox.launcher_1.0.0.v20070606.jar當(dāng)Startup.jar用,在外面也放一份~啟動(dòng)的時(shí)候JWS會(huì)包錯(cuò)的,會(huì)說JAR包重復(fù)!