
2006年1月12日 #
1.支持as2及as3的加密。目前反編譯器完全看不到代碼
2.支持對(duì)as3的混淆,讓反編譯器看到的是一堆亂碼
3.支持對(duì)as3注入隨機(jī)代碼,讓反編譯軟件直接崩潰退出
4.支持一個(gè)項(xiàng)目多個(gè)swf同時(shí)處理(doproject特性)
5.支持對(duì)swc文件的加密
6.方便對(duì)as3的swf添加文字、圖片水印
7.支持對(duì)as3的swf進(jìn)行剔除重組,方便模塊開(kāi)發(fā)
DoSWF主要分為3個(gè)不同的版本:
MINI是DoSWF的一個(gè)簡(jiǎn)易版,擁有DoSWF最基礎(chǔ)的加密、混淆功能。優(yōu)點(diǎn)就是使用很簡(jiǎn)單.
PROJECT版主要是針對(duì)項(xiàng)目處理而發(fā)布的。它可以一次對(duì)多個(gè)swf文件進(jìn)行綜合批量處理。
PROFESSIONAL版即DoSWF專業(yè)版。擁有MINI版和PROJECT版所有功能。同時(shí)還有更多的特性,比如添加水印,剔除,使用域控制等
MINI版本的價(jià)格只要人民幣50元,對(duì)于普通個(gè)人來(lái)說(shuō)僅僅是相當(dāng)于一本書(shū)的價(jià)格.
經(jīng)過(guò)測(cè)試.混淆加密過(guò)后的文件不會(huì)被SwfScan和Sothink等反編譯工具破解,值得推薦!!
DoSWF的地址: http://www.doswf.cn/
但是在360瀏覽器這樣的嵌入IE內(nèi)核的瀏覽器下確出現(xiàn)問(wèn)題.
stage.stageWidth在swf加載后能夠正常的得到正確的值,但是在360瀏覽器下卻得到0.
而且不同的是360加載完swf后會(huì)觸發(fā)一個(gè)Resize事件,這個(gè)記得在以前做js框架的時(shí)候也發(fā)現(xiàn)過(guò).
IE FF 等不會(huì)觸發(fā).
觸發(fā)過(guò)resize事件后,才能正常得到stageWidth的值.
挺奇怪的現(xiàn)象,這樣導(dǎo)致原有的代碼出現(xiàn)了問(wèn)題.
看來(lái)瀏覽器的不同還是會(huì)影響swf中的某些機(jī)制或者屬性.
20091106更新:
(1)解決360瀏覽器下無(wú)法打開(kāi)的bug.
(2)調(diào)整顏色顯示,解決Flash9下繪制錯(cuò)誤的bug.
很久沒(méi)更新,最近一直在研究的東西
MSNP12,? LUCENE, IBATIS
這點(diǎn)我非常的贊同.
企業(yè)級(jí)的定位使它的功能強(qiáng)大了,
同時(shí)易用性就相對(duì)削弱了一些.?"
看到這些話就忍不住想罵人?? 什么是企業(yè)級(jí)應(yīng)用?? 企業(yè)級(jí)應(yīng)用是易用性差的借口么? 難道就只有java能做企業(yè)級(jí)應(yīng)用,php,asp就只能做做網(wǎng)站? taobao,ebay不算企業(yè)級(jí)應(yīng)用么????..... ...





































明白的告訴我一下,謝謝. 覺(jué)的有點(diǎn)問(wèn)題...
為了通用,從頭到尾都是utf-8.
而webwork中JakartaMultiPartRequest對(duì)于多編碼的處理并不如意.
apache的fileupload對(duì)于上傳文件名為中文的需要首先指定HeaderEncoding的編碼.
而webwork對(duì)于MultiPartRequest的request并沒(méi)有設(shè)置encoding編碼
詳見(jiàn)DispatcherUtils.java中 387行













如果沒(méi)有指定HeaderEncoding, 那么默認(rèn)采用request的encoding,如果request也沒(méi)有指定則采用系統(tǒng)的編碼.
這里并沒(méi)有指定request的encoding,往往導(dǎo)致上傳文件的名字亂碼.
自定義一個(gè)MultiPartRequest,設(shè)定一下就ok了
對(duì)于同時(shí)提交的表單域(form)參數(shù),由于在form中指定的enctype的關(guān)系,并不能直接用request.getParameter()才取, 只能通過(guò)FileItem.getString()的方式.這里也是上面的問(wèn)題, 取的CharacterEncoding是request中的,由于webwork的原因不一致.同樣需要指定一下.
這樣form和上傳同時(shí)提交,參數(shù),附件名都正常了 :)
以前還真沒(méi)有注意到.:)
其實(shí)我對(duì)這種類似桌面的開(kāi)發(fā)方式來(lái)開(kāi)發(fā)web程序一點(diǎn)都不感冒,因?yàn)榉庋b的東西太多,勢(shì)必影響擴(kuò)展性。而且對(duì)應(yīng)的社區(qū)也很少,很多因素影響。
一個(gè)企業(yè)應(yīng)用對(duì)于框架,技術(shù)并不是最重要的,需求和人員的素質(zhì)等等因素也是很制約的。 很多開(kāi)源的東西,在我看來(lái)只是 “看起來(lái)很美!” 回過(guò)來(lái)說(shuō)zk,能以這種方式來(lái)開(kāi)發(fā)也許能給我們很多啟發(fā)。
有興趣的可以去看看:
zk http://zk1.sourceforge.net/
HSQLDB簡(jiǎn)介
Vincent 2006年2月24日
一 什么是HSQLDB?
HSQLDB是一個(gè)用java編寫(xiě)的關(guān)系型數(shù)據(jù)庫(kù),它支持ANSI-92 SQL (BNF tree format) plus SQL 99 and 2003 enhancements. 它提供了一個(gè)非常小而快速的數(shù)據(jù)庫(kù)引擎,同時(shí)提供了相關(guān)的JDBC驅(qū)動(dòng)和一些實(shí)用的工具。
最新的HSQLDB版本為1.8.0 ,經(jīng)過(guò)了1年的開(kāi)發(fā),和1.7.2相比,1.8.0的功能更加強(qiáng)大, 對(duì)數(shù)據(jù)庫(kù)的容量支持達(dá)到了8GB,性能也更加出色。和當(dāng)年相比,HSQLDB已經(jīng)不僅僅很多人眼里的玩具,完全可以勝任商業(yè)的需求。(OpenOffice.org 2.0的數(shù)據(jù)庫(kù)引擎為HSQLDB1.8.0)
這里有一張數(shù)據(jù)庫(kù)的performance test對(duì)比圖(HSQLDB的性能遠(yuǎn)遠(yuǎn)超過(guò)其他的數(shù)據(jù)庫(kù))
二 HSQLDB介紹
1.1 簡(jiǎn)介
hsqldb.jar 包含所有的組件(數(shù)據(jù)庫(kù)引擎,jdbc驅(qū)動(dòng), 數(shù)據(jù)工具), 不同的命令用來(lái)執(zhí)行不同的組件。
hsqldb.jar主要包含了一下組件:





1.2 運(yùn)行工具(Running Tools)
所有的工具都以jar的方式來(lái)運(yùn)行,下面的例子講運(yùn)行AWT方式的DataBase Manager,我們假設(shè)hsqldb.jar位于../lib目錄中

Hsqldb工具的主類:





其中,DatabaseManager和SqlTool都可以有命令行參數(shù),你可以用-?來(lái)察看它們有什么參數(shù)。DatabaseManager和Transfer都有圖形界面可以更好地交互。
1.3 運(yùn)行HSQLDB
HSQLDB可以通過(guò)多種不同的方式來(lái)運(yùn)行,通常把它分為Server模式和In-Process模式(也叫做Standalone模式),對(duì)于每種模式,Jar中都有相應(yīng)的子程序來(lái)運(yùn)行HSQLDB。
每個(gè)HSQLDB數(shù)據(jù)庫(kù)包含2到5個(gè)命名相同但擴(kuò)展名不同的文件組成,他們位于同一個(gè)目錄下。例如,名為“test”的數(shù)據(jù)庫(kù)包含了以下幾個(gè)文件:





properties文件包含了數(shù)據(jù)庫(kù)的基本配置,script文件包含了Table的定義和其他相關(guān)的數(shù)據(jù)對(duì)象,以及non-cached表的數(shù)據(jù)。log文件記錄了數(shù)據(jù)庫(kù)最近所做的更新。dat文件包含了cached表的數(shù)據(jù),backup文件是上一次數(shù)據(jù)庫(kù)持久化后的壓縮備份文件,所有的這些文件都是最基本的,絕對(duì)不能刪除。如果你的數(shù)據(jù)庫(kù)沒(méi)有緩沖表(cached table),test.data和test.backup文件是不會(huì)存在。此外,HSQLDB數(shù)據(jù)庫(kù)可以鏈接到磁盤(pán)上任何地方任何格式的文本文件,比如CSV 列表。
當(dāng)"test"數(shù)據(jù)庫(kù)正在運(yùn)行時(shí),test.log文件用來(lái)記錄所有的操作記錄,"test.log"文件將在數(shù)據(jù)庫(kù)正常關(guān)閉(ShutDown)情況下自動(dòng)刪除。否則(在非正常退出的時(shí)候),它將用來(lái)在下次啟動(dòng)HSQLDB時(shí)恢復(fù)"test.log"中記錄的更新操作。"test.lck"文件也可以用來(lái)記錄數(shù)據(jù)庫(kù)是否被打開(kāi),它在HSQLDB正常退出的時(shí)候會(huì)被移除。有些情況下,HSQLDB會(huì)生成"test.data.old "文件,但隨后會(huì)被刪除掉。
注意: 當(dāng)HSQLDB引擎關(guān)閉數(shù)據(jù)庫(kù)的時(shí)候,它會(huì)產(chǎn)生擴(kuò)展名為.new的臨時(shí)文件,然后會(huì)把這些文件重命名為上面所列出的文件的名稱。
對(duì)于一個(gè)軟件公司,究竟是買軟件還是買服務(wù)? 買軟件做項(xiàng)目,必然要設(shè)計(jì)到軟件的開(kāi)發(fā)定制,前期的投入是不可避免的,后期的維護(hù)成本也是很高的,客戶的需求是無(wú)止境的,往往上千萬(wàn)的項(xiàng)目做下來(lái)卻是虧本的。 從另外一個(gè)角度來(lái)看,軟件究竟是什么? 在我看來(lái),軟件就是一種特殊的服務(wù),這里的服務(wù)不是指人的因素,而是機(jī)器,是軟件,用我們老大的話來(lái)講,用人去做服務(wù)一定是虧本的。
心里也一直有一種設(shè)想,或許以后不再依靠出售軟件,做項(xiàng)目來(lái)生存,而是出售服務(wù),尤其是基于bs結(jié)構(gòu)的服務(wù)。想想google的email,BSP,RSS reader等等,或許很快在線的erp,在線的crm, oa,cms等等就會(huì)變成現(xiàn)實(shí),當(dāng)然這里很重要的一點(diǎn)就是要做到行業(yè)的標(biāo)準(zhǔn),需要客戶來(lái)認(rèn)同你,信任你。
這里的情景很像現(xiàn)在的網(wǎng)游,我提供服務(wù),你提供數(shù)據(jù),數(shù)據(jù)集中存放,我提供個(gè)性化的定制,提供相關(guān)聯(lián)的信息(類似gmail中的廣告),針對(duì)特殊用戶做增值服務(wù)。
看看37signal,一個(gè)人被很多人認(rèn)為是一個(gè)很偉大的企業(yè)。我們好好思考一下,是不是應(yīng)該做點(diǎn)什么?
圖形組件庫(kù),事件驅(qū)動(dòng)機(jī)制,完全OO的UI的開(kāi)發(fā)模式,再加上強(qiáng)大的EchoStudio,感覺(jué)一切都完美了很多。
EchoStudio由于是商業(yè)軟件,有一定的試用期,最不爽的就是把以前的css完全用stylesheet來(lái)替代,可是竟然沒(méi)有看到相關(guān)的schema。只能用EchoStudio來(lái)做stylesheet,這不是逼著你買么? 沒(méi)辦法,只能crack了,反編譯了一下,暗自慶幸。嘿嘿,代碼竟然沒(méi)有混淆,很容易找到了驗(yàn)證代碼。哈哈javassist2分鐘搞定。不過(guò)作為一個(gè)軟件開(kāi)發(fā)人員,還是小小的BS一下自己.....
新版本是非常值得期待的.
2.2版本是WebWork的一個(gè)新的里程碑, 接下來(lái)的主要精力將會(huì)投入到Struts Action Framework Version2.0