天堂网www中文在线,最新欧美日韩亚洲,青青草久久爱http://www.aygfsteel.com/luoqx/category/3054.htmlzh-cnFri, 02 Mar 2007 02:07:57 GMTFri, 02 Mar 2007 02:07:57 GMT60在windows下eclipse的帶ssh的cvs客戶(hù)端配置(使用putty tools)http://www.aygfsteel.com/luoqx/archive/2006/04/12/40588.htmlpublisher luopublisher luoWed, 12 Apr 2006 03:16:00 GMThttp://www.aygfsteel.com/luoqx/archive/2006/04/12/40588.htmlhttp://www.aygfsteel.com/luoqx/comments/40588.htmlhttp://www.aygfsteel.com/luoqx/archive/2006/04/12/40588.html#Feedback0http://www.aygfsteel.com/luoqx/comments/commentRss/40588.htmlhttp://www.aygfsteel.com/luoqx/services/trackbacks/40588.html在sourceforge上注冊(cè)了一個(gè)開(kāi)源項(xiàng)目(http://nodepublisher.sourceforge.net/),在后臺(tái)管理里面其它配置基本上都配置成功,cvs開(kāi)發(fā)人員的訪(fǎng)問(wèn)也按照幫助使用wincvs訪(fǎng)問(wèn)成功,可是現(xiàn)在開(kāi)發(fā)都使用eclipse里面的cvs,如果結(jié)合者wincvs使用實(shí)在是太麻煩了,所以上網(wǎng)找了找資料,中文的沒(méi)有,只有一些英文資料,將它們整理翻譯一下,供大家參考。
我已經(jīng)能夠使用windows下的eclipse中的cvs訪(fǎng)問(wèn)SourceForge的cvs服務(wù)器了,下面是操作過(guò)程。

下載?PuTTY tools

  • 下載?PuTTYgen, Pageant,?和 Plink 三個(gè)文件到你計(jì)算機(jī)一個(gè)文件目錄下。可以象本向?qū)б粯臃诺?"C:\Program Files\PuTTY"下。

生成你自己的一對(duì)RSA密鑰

  1. 運(yùn)行PuTTYgen.?點(diǎn)擊Generate?按鈕并且按照上面說(shuō)明的移動(dòng)你的鼠標(biāo)。
  2. 在"Key passphrase"中輸入一個(gè)規(guī)整的長(zhǎng)密碼并且在"Confirm passphrase"中重復(fù)輸入。
  3. 點(diǎn)擊"Save public key"?將你生成的共鑰保存在你的計(jì)算機(jī)的某個(gè)目錄下.例如"C:\Documents and Settings\Matt Whitlock\sf0.pub". 其實(shí)在后面的使用中你并不真正使用它,但是保留下來(lái)還是挺好的有可能你會(huì)在其它地方用到它.
  4. 點(diǎn)擊"Save private key" 保存私鑰到你的計(jì)算機(jī)上.例如"C:\Documents and Settings\Matt Whitlock\ssh\sf0.ppk". 這個(gè)文件已經(jīng)被你的密碼段加密了.
  5. 拷貝高亮顯示區(qū)域"Public key for pasting into OpenSSH authorized_keys file"中的內(nèi)容到剪貼板中.

保存你的公鑰到SourceForge中

  1. 登入到SourceForge.
  2. 點(diǎn)擊工具條上的?"My Settings".
  3. 點(diǎn)擊"Authorized Keys" .
  4. 粘貼你拷貝在剪貼板里的公鑰.新的公鑰將替換原來(lái)已有的其它公鑰。
  5. 點(diǎn)擊?"Update" 保存你的公鑰到SourceForge.

使用Pageant來(lái)提供ssh的身份認(rèn)證

  1. 啟動(dòng)Pageant. 將會(huì)有一個(gè)告示圖標(biāo)顯示在右下角的任務(wù)條中.
  2. 右鍵點(diǎn)擊Pageant告示圖標(biāo)并且選擇"Add Key".
  3. 打開(kāi)剛才生成并保存的私鑰"C:\Documents and Settings\Matt Whitlock\ssh\sf0.ppk".
  4. Pageant 將會(huì)提示你輸入你加密私鑰的密碼然后點(diǎn)擊 "OK".

緩存SSH服務(wù)器的主機(jī)公鑰

在你能夠使用Eclipse連接CVS服務(wù)器之前,你必須添加SSH服務(wù)器的主機(jī)公鑰到你的本地緩存中。

方法?1 (如果你有全部的PuTTY客戶(hù)端)

  1. 就是使用PuTTY連接cvs.sourceforge.net,當(dāng)它詢(xún)問(wèn)你是否信任這個(gè)服務(wù)器的時(shí)候你選擇 并且添加公鑰到你的緩存中,你只要選擇yes.然后就可以了,你可以實(shí)際并不登入到此服務(wù)器。

方法?2 (如果你有Plink,而沒(méi)有 PuTTY)

  1. 打開(kāi)命令提示框并執(zhí)行:

    "C:\Program Files\PuTTY\plink.exe"?cvs.sourceforge.net -l username

    username就是你在SourceForge的用戶(hù)名. (注意在username前面的L是小寫(xiě)的 )
  2. 你可能得到一個(gè)信息說(shuō)"the server's host key is not cached in the registry."?你應(yīng)該回答 'y'.
  3. 如果你得到的信息是"This is a restricted shell account. You cannot execute anything here", 你的SSH客戶(hù)端已經(jīng)正確設(shè)置完成。.

配置Eclipse使用PuTTY's Plink來(lái)SSH連接

  1. 運(yùn)行Eclipse. 我運(yùn)行的是版本3.1
  2. 選擇?"Preferences"?從 "Window" 菜單中. 選擇"Team/CVS/Ext Connection Method".
  3. 點(diǎn)擊"Browse" 找到"C:\Program Files\PuTTY\plink.exe".
  4. 點(diǎn)擊"OK" 保存你的參數(shù)選擇。

添加你的CVS repository到Eclipse

  1. 選擇 "Window", "Open Perspective", "Other", "CVS Repository Exploring",?點(diǎn)擊 "OK".
  2. 右鍵點(diǎn)擊?"CVS Repositories"? (屏幕左面大塊空白區(qū)域)選擇"New", "Repository Location".
  3. 在"Host"處填寫(xiě)"cvs.sourceforge.net".
  4. 在"Repository path"處填寫(xiě)你的CVS repository 路徑. 你可以在你的 SourceForge工程頁(yè)的"Source code"處找到. 它應(yīng)該類(lèi)似"/cvsroot/projectname".
  5. 在"User"處填寫(xiě)你的SourceForge用戶(hù)名.
  6. password不填寫(xiě).我們不使用口令認(rèn)證而是通過(guò)Pageant使用SSH2-RSA key .
  7. 在"Connection type"處選擇"ext"類(lèi)型。
  8. 點(diǎn)擊"Finish". 這樣Eclipse就能夠連接CVS server了。


]]>
關(guān)于使用utf8編碼實(shí)現(xiàn)全球化的幾點(diǎn)困惑http://www.aygfsteel.com/luoqx/archive/2006/04/09/40059.htmlpublisher luopublisher luoSun, 09 Apr 2006 02:25:00 GMThttp://www.aygfsteel.com/luoqx/archive/2006/04/09/40059.htmlhttp://www.aygfsteel.com/luoqx/comments/40059.htmlhttp://www.aygfsteel.com/luoqx/archive/2006/04/09/40059.html#Feedback1http://www.aygfsteel.com/luoqx/comments/commentRss/40059.htmlhttp://www.aygfsteel.com/luoqx/services/trackbacks/40059.html??? 某日一時(shí)興起將我們的內(nèi)容管理發(fā)布系統(tǒng)改成uft-8格式(即將所有頁(yè)面encode變?yōu)閡tf8,mysql字符集也變成uft-8)來(lái)支持能夠建立各種語(yǔ)言的網(wǎng)站(產(chǎn)品現(xiàn)在可以免費(fèi)下載,網(wǎng)址為:http://sourceforge.net/projects/nodepublisher)。但是在修改程序過(guò)程中發(fā)現(xiàn)了一個(gè)問(wèn)題,那就是在客戶(hù)端頁(yè)面提交過(guò)來(lái)的請(qǐng)求的編碼格式在服務(wù)器端無(wú)法獲知。如果提交頁(yè)面的<head>里面如果包含<meta http-equiv="Content-Type" content="text/html; charset=utf-8">,漢字部分則以u(píng)tf8編碼提交,如果沒(méi)有的話(huà)則以gbk編碼提交,而服務(wù)器端接受到的request無(wú)法判別編碼格式,取到的頭信息只有一些zh類(lèi)似的說(shuō)明,所以無(wú)法正確的將其轉(zhuǎn)換成正確的編碼格式。
另一需要注意的是不能將取到的參數(shù)從ISO8859轉(zhuǎn)換成中文系統(tǒng)默認(rèn)的字符集GBK,然后再轉(zhuǎn)換成utf8,這樣的話(huà)如果出現(xiàn)奇數(shù)漢字的話(huà)會(huì)導(dǎo)致部分漢字亂碼,原因在于漢字在GBK編碼中為2個(gè)byte,而在utf8編碼則為3個(gè)byte,如果是偶數(shù)個(gè)漢字,從ISO8859(tomcat默認(rèn)得到的request都是ISO8859編碼)轉(zhuǎn)換成GBK,然后再轉(zhuǎn)換成ISO8859到還無(wú)妨,但是奇數(shù)個(gè),最后一個(gè)byte不知道會(huì)怎么轉(zhuǎn)換成GBK的,然后再轉(zhuǎn)回到utf8時(shí)最后那個(gè)字符就會(huì)成為亂碼,我想可能是跟String類(lèi)里面的拆分char的方法有關(guān),不知道誰(shuí)有更加明確的分析和解釋。
再一數(shù)據(jù)庫(kù)方面使用mysql5,設(shè)置成utf8初始化數(shù)據(jù)腳本漢字轉(zhuǎn)換成uft8,一切正常。后來(lái)無(wú)意將數(shù)據(jù)庫(kù)轉(zhuǎn)換成GBK編碼,竟然程序運(yùn)行也正常,后來(lái)經(jīng)過(guò)測(cè)試將mysql設(shè)置成gbk,然后執(zhí)行初始化sql腳本,漢字編碼格式為GBK,程序運(yùn)行依然正常。不明白其中的原由。



]]>
軟件體系結(jié)構(gòu)(構(gòu)架)、框架、設(shè)計(jì)模式之間的關(guān)系http://www.aygfsteel.com/luoqx/archive/2005/11/18/20397.htmlpublisher luopublisher luoFri, 18 Nov 2005 03:12:00 GMThttp://www.aygfsteel.com/luoqx/archive/2005/11/18/20397.htmlhttp://www.aygfsteel.com/luoqx/comments/20397.htmlhttp://www.aygfsteel.com/luoqx/archive/2005/11/18/20397.html#Feedback3http://www.aygfsteel.com/luoqx/comments/commentRss/20397.htmlhttp://www.aygfsteel.com/luoqx/services/trackbacks/20397.html

一、軟件體系結(jié)構(gòu)和框架的定義

軟件體系結(jié)構(gòu)的英文單詞是“architecture”. Architecture的基本詞義是建筑、建筑學(xué)、建筑風(fēng)格。

軟件體系結(jié)構(gòu)雖然根植于軟件工程,但還處于一個(gè)研究發(fā)展的階段,迄今為止還沒(méi)有一個(gè)為大家所公認(rèn)的定義。

 《設(shè)計(jì)模式》中對(duì)框架的定義是框架就是一組相互協(xié)作的類(lèi),對(duì)于特定的一類(lèi)軟件,框架構(gòu)成了一種可重用的設(shè)計(jì)。

軟件框架是 項(xiàng)目軟件開(kāi)發(fā)過(guò)程中提取特定領(lǐng)域軟件的共性部分形成的體系結(jié)構(gòu),不同領(lǐng)域的軟件項(xiàng)目有著不同的框架類(lèi)型。框架的作用在于:由于提取了特定領(lǐng)域軟件的共性部 分,因此在此領(lǐng)域內(nèi)新項(xiàng)目的開(kāi)發(fā)過(guò)程中代碼不需要從頭編寫(xiě),只需要在框架的基礎(chǔ)上進(jìn)行一些開(kāi)發(fā)和調(diào)整便可滿(mǎn)足要求;對(duì)于開(kāi)發(fā)過(guò)程而言,這樣做會(huì)提高軟件的 質(zhì)量,降低成本,縮短開(kāi)發(fā)時(shí)間,使開(kāi)發(fā)越做越輕松,效益越做越好,形成一種良性循環(huán)。

框 架不是現(xiàn)成可用的應(yīng)用系統(tǒng)。是一個(gè)半成品,需要后來(lái)的開(kāi)發(fā)人員進(jìn)行二次開(kāi)發(fā),實(shí)現(xiàn)具體功能的應(yīng)用系統(tǒng)。框架不是“平臺(tái)”,平臺(tái)概念比較模糊可以是一種操作 系統(tǒng),一種應(yīng)用服務(wù)器,一種數(shù)據(jù)庫(kù)軟件,一種通訊中間件等地那個(gè),因此平臺(tái)在應(yīng)用平臺(tái)主要指提供特定服務(wù)的系統(tǒng)軟件,而框架更側(cè)重了設(shè)計(jì),開(kāi)發(fā)過(guò)程,或者 可以說(shuō),框架通過(guò)調(diào)用平臺(tái)提供的服務(wù)而起的作用。

框架不是工具包或者類(lèi)庫(kù),調(diào)用API并不就是在使用框架開(kāi)發(fā),緊緊使用API是,開(kāi)發(fā)者完成系統(tǒng)的主題部分,并不時(shí)地調(diào)用類(lèi)庫(kù)實(shí)現(xiàn)特定任務(wù)。而框架構(gòu)成了通用的、具有一般性的系統(tǒng)主體部分,二次開(kāi)發(fā)人員只是像做填空一樣,根據(jù)具體業(yè)務(wù),完成特定應(yīng)用系統(tǒng)中與眾不同的特殊部分。

二、框架與架構(gòu)之間的關(guān)系
    框架不是構(gòu)架(即軟件體系機(jī)構(gòu))。體系結(jié)構(gòu)確定了系統(tǒng)整體結(jié)構(gòu)、層次劃分,不同部分之間的協(xié)作等設(shè)計(jì)考慮。框架比架構(gòu)更具體。更偏重于技術(shù)涉嫌。確定框架后,軟件體系結(jié)構(gòu)也隨之確定,而對(duì)于同一軟件體系結(jié)構(gòu)(比如Web開(kāi)發(fā)中的MVC),可以通過(guò)多種框架來(lái)實(shí)現(xiàn)。

三、框架與設(shè)計(jì)模式之間的關(guān)系

設(shè) 計(jì)模式和框架在軟件設(shè)計(jì)中是兩個(gè)不同的研究領(lǐng)域。設(shè)計(jì)模式研究的是一個(gè)設(shè)計(jì)問(wèn)題的解決方法,一個(gè)模式可應(yīng)用于不同的框架和被不同的語(yǔ)言所實(shí)現(xiàn);而框架則是 一個(gè)應(yīng)用的體系結(jié)構(gòu),是一種或多種設(shè)計(jì)模式和代碼的混合體雖然它們有所不同,但卻共同致力于使人們的設(shè)計(jì)可以被重用,在思想上存在著統(tǒng)一性的特點(diǎn),因而設(shè) 計(jì)模式的思想可以在框架設(shè)計(jì)中進(jìn)行應(yīng)用。

框架和設(shè)計(jì)模式存在著顯著的區(qū)別,主要表現(xiàn)在二者提供的內(nèi)容和致力應(yīng)用的領(lǐng)域。

1)從應(yīng)用領(lǐng)域上分,框架給出的是整個(gè)應(yīng)用的體系結(jié)構(gòu);而設(shè)計(jì)模式則給出了單一設(shè)計(jì)問(wèn)題的解決方案,并且這個(gè)方案可在不同的應(yīng)用程序或者框架中進(jìn)行應(yīng)用。

2)從內(nèi)容上分,設(shè)計(jì)模式僅是一個(gè)單純的設(shè)計(jì),這個(gè)設(shè)計(jì)可被不同語(yǔ)言以不用方式來(lái)實(shí)現(xiàn);而框架則是設(shè)計(jì)和代碼的一個(gè)混合體,編程者可以用各種方式對(duì)框架進(jìn)行擴(kuò)展,進(jìn)而形成完整的不同的應(yīng)用。

3)以第二條為基礎(chǔ),可以得出設(shè)計(jì)模式比框架更容易移植:框架一旦設(shè)計(jì)成形,雖然還沒(méi)有構(gòu)成完整的一個(gè)應(yīng)用,但是以其為基礎(chǔ)進(jìn)行應(yīng)用的開(kāi)發(fā)顯然要受制于框架的實(shí)現(xiàn)環(huán)境;而設(shè)計(jì)模式是與語(yǔ)言無(wú)關(guān)的,所以可以在更廣泛的異構(gòu)環(huán)境中進(jìn)行應(yīng)用。

總之,框架是軟件,而設(shè)計(jì)模式是軟件的知識(shí)體,提升框架的設(shè)計(jì)水平。




]]>
基于J2EE輕量級(jí)容器構(gòu)件框架設(shè)計(jì)(系列)http://www.aygfsteel.com/luoqx/archive/2005/11/18/20393.htmlpublisher luopublisher luoFri, 18 Nov 2005 03:01:00 GMThttp://www.aygfsteel.com/luoqx/archive/2005/11/18/20393.htmlhttp://www.aygfsteel.com/luoqx/comments/20393.htmlhttp://www.aygfsteel.com/luoqx/archive/2005/11/18/20393.html#Feedback4http://www.aygfsteel.com/luoqx/comments/commentRss/20393.htmlhttp://www.aygfsteel.com/luoqx/services/trackbacks/20393.html基于J2EE輕量級(jí)容器構(gòu)件框架

一、總體結(jié)構(gòu)圖:http://www.aygfsteel.com/luoqx/articles/20366.html

二、總體介紹:http://www.aygfsteel.com/luoqx/articles/20372.html

三、控制器部分:http://www.aygfsteel.com/luoqx/articles/20377.html

四、異常處理:http://www.aygfsteel.com/luoqx/articles/20381.html

五、事務(wù)的AOP處理:http://www.aygfsteel.com/luoqx/articles/20383.html

六、數(shù)據(jù)bean(DataBean):http://www.aygfsteel.com/luoqx/articles/20390.html

七、系統(tǒng)初始化服務(wù)和過(guò)濾器配置:http://www.aygfsteel.com/luoqx/articles/20406.html

附以前寫(xiě)的文章介紹

現(xiàn)有框架簡(jiǎn)單介紹:http://www.aygfsteel.com/luoqx/articles/11301.html

一個(gè)項(xiàng)目里簡(jiǎn)單實(shí)用的O/R mapping的功能代碼:http://www.aygfsteel.com/luoqx/articles/12758.html


]]>
j2ee框架設(shè)計(jì)原理及應(yīng)用板塊開(kāi)張http://www.aygfsteel.com/luoqx/archive/2005/08/27/11293.htmlpublisher luopublisher luoSat, 27 Aug 2005 03:45:00 GMThttp://www.aygfsteel.com/luoqx/archive/2005/08/27/11293.htmlhttp://www.aygfsteel.com/luoqx/comments/11293.htmlhttp://www.aygfsteel.com/luoqx/archive/2005/08/27/11293.html#Feedback5http://www.aygfsteel.com/luoqx/comments/commentRss/11293.htmlhttp://www.aygfsteel.com/luoqx/services/trackbacks/11293.html詳細(xì)見(jiàn)文章的框架設(shè)計(jì)專(zhuān)欄。
一、框架結(jié)構(gòu)介紹
http://www.aygfsteel.com/luoqx/articles/11301.html
基于J2EE輕量級(jí)容器構(gòu)件框架

一、總體結(jié)構(gòu)圖:http://www.aygfsteel.com/luoqx/articles/20366.html

二、總體介紹:http://www.aygfsteel.com/luoqx/articles/20372.html

三、控制器部分:http://www.aygfsteel.com/luoqx/articles/20377.html

四、異常處理:http://www.aygfsteel.com/luoqx/articles/20381.html

五、事務(wù)的AOP處理:http://www.aygfsteel.com/luoqx/articles/20383.html

六、數(shù)據(jù)bean(DataBean):http://www.aygfsteel.com/luoqx/articles/20390.html

七、系統(tǒng)初始化服務(wù)和過(guò)濾器配置:http://www.aygfsteel.com/luoqx/articles/20406.html

附以前寫(xiě)的文章介紹

現(xiàn)有框架簡(jiǎn)單介紹:http://www.aygfsteel.com/luoqx/articles/11301.html

一個(gè)項(xiàng)目里簡(jiǎn)單實(shí)用的O/R mapping的功能代碼:http://www.aygfsteel.com/luoqx/articles/12758.html



]]>
why? EnterpriseBean extend Serializablehttp://www.aygfsteel.com/luoqx/archive/2005/08/27/11289.htmlpublisher luopublisher luoSat, 27 Aug 2005 03:20:00 GMThttp://www.aygfsteel.com/luoqx/archive/2005/08/27/11289.htmlhttp://www.aygfsteel.com/luoqx/comments/11289.htmlhttp://www.aygfsteel.com/luoqx/archive/2005/08/27/11289.html#Feedback0http://www.aygfsteel.com/luoqx/comments/commentRss/11289.htmlhttp://www.aygfsteel.com/luoqx/services/trackbacks/11289.html

??? 同事問(wèn)了一個(gè)這樣的問(wèn)題,大家都知道,ejb的本地接口,遠(yuǎn)程接口還有參數(shù)都需要序列話(huà),這是因?yàn)檫@些東西都需要分布式傳輸,可是在容器了的bean不需要分布傳輸為什么也要實(shí)現(xiàn)serializable接口呢?
??? 上網(wǎng)差了些資料,主要有兩種說(shuō)法,一個(gè)是app server要作cluster,交換內(nèi)存中數(shù)據(jù)(包括ejb)。二是ejbPassivate(鈍化)和ejbActivate() (活化)時(shí)需要使用序列話(huà)。第二種說(shuō)法可能性比較大。
參考資料:


]]>
主站蜘蛛池模板: 金阳县| 松滋市| 永春县| 丰台区| 东至县| 江源县| 仪陇县| 泸定县| 康乐县| 晋州市| 营口市| 射阳县| 镇平县| 万年县| 鹤峰县| 德保县| 保康县| 神农架林区| 武宣县| 常宁市| 新巴尔虎右旗| 山东| 林芝县| 广汉市| 肇东市| 大连市| 九龙县| 乌海市| 梧州市| 曲沃县| 贵州省| 绥滨县| 常德市| 石屏县| 五寨县| 乌兰察布市| 儋州市| 小金县| 万盛区| 光山县| 遂宁市|