<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Flyingis

    Talking and thinking freely !
    Flying in the world of GIS !
    隨筆 - 156, 文章 - 16, 評論 - 589, 引用 - 0
    數(shù)據(jù)加載中……

    2006年11月14日

    Flyingis on BlogJava 停止更新

        文章在多個博客間來回拷貝切換比較麻煩,我寫博客比較注重排版,格式調(diào)整也花費(fèi)了不少時間,并且多個博客使得大家的討論也分散在不同的地方,因此今后BlogJavaJavaEye上的文章停止更新(已經(jīng)停止一段時間了),感謝大家一直以來的關(guān)注,今天是愚人節(jié),但這條消息是正式聲明:)

        博客園上繼續(xù)保持更新,請訪問:

        http://www.cnblogs.com/flyingis

        歡迎拍磚交流!

        Flyingis

    posted @ 2008-04-01 11:01 Flyingis 閱讀(2181) | 評論 (1)編輯 收藏

    ArcGIS 9.2 SP4 補(bǔ)丁升級

        最近一直在出差,今天發(fā)現(xiàn)ArcGIS 9.2 sp4補(bǔ)丁已經(jīng)出來了,打破了9.0三個補(bǔ)丁包的記錄及單位時間內(nèi)的補(bǔ)丁密度:)。如果是全新的應(yīng)用系統(tǒng),請直接升級,否則先參考這兩篇說明:

        A complete list of the issues that have been fixed in this service pack is available here.
        A list of the main enhancements that have been made in the 9.2 Service Packs is available here.

        確認(rèn)需要打上sp4補(bǔ)丁?那就開始吧:所有sp4補(bǔ)丁鏈接

        ArcGIS 9.2每次釋放出的補(bǔ)丁不僅解決了許多已發(fā)現(xiàn)的bug,更是在功能、文檔方面做了大量的改進(jìn),所以現(xiàn)在準(zhǔn)備開發(fā)或正在開發(fā)的應(yīng)用系統(tǒng)都應(yīng)該盡量升級到最新補(bǔ)丁,避免被一些無厘頭的問題扯了后腿。

    posted @ 2007-12-11 23:13 Flyingis 閱讀(3571) | 評論 (8)編輯 收藏

    跨網(wǎng)段部署 ArcGIS Desktop 浮動 License

        如果單獨(dú)在服務(wù)器上部署ArcGIS桌面浮動License,一般的都需要處理防火墻端口問題,這種環(huán)境在校園機(jī)房中最為典型,9.x版本需要開放27004端口,這樣所有機(jī)器都可以訪問到服務(wù)器上的License,但是在跨網(wǎng)段環(huán)境中,還需要額外的處理。

        使用Windows XP/2003自帶的防火墻,除了開發(fā)27004 TCP端口外,還應(yīng)將lmgrd.exe、ARCGIS.exe添加到例外程序中,其他商業(yè)防火墻同樣需要放開這兩個程序的訪問控制,否則將無法連接到License服務(wù)器。

        如果使用的是第三方防火墻,如瑞星、天網(wǎng),則只需開放27004/tcp端口。

    posted @ 2007-12-11 23:12 Flyingis 閱讀(2363) | 評論 (0)編輯 收藏

    遠(yuǎn)程連接 SuSE Linux 設(shè)置方法

        作者:Flyingis

        且不說遠(yuǎn)程連接的便利性,就是機(jī)房里那轟轟的高分貝就足以讓你的耳膜形成習(xí)慣性振動,何況還需要集中精神工作呢,在網(wǎng)絡(luò)帶寬允許的情況下,還是選擇遠(yuǎn)程吧。遠(yuǎn)程連接的客戶端工具有很多,有商業(yè)的如Symantec pcAnywhere等,但我用的最多的還是Xmanager、VNC、Windows自己的遠(yuǎn)程連接工具、還有Telnet,和Windows環(huán)境一樣,默認(rèn)情況下遠(yuǎn)程連接是沒有打開的,連接SuSE Linux服務(wù)器就需要做一些設(shè)置,其他Linux服務(wù)器相仿。

        Xmanager

    1. 編輯 '/etc/opt/kde3/share/config/kdm/kdmrc' file in config section '[XDMCP]'
        更改"Enable=false" to "Enable=true",將port=177的屏蔽去掉。

    2. 編輯 '/etc/sysconfig/displaymanager'
        更改'DISPLAYMANAGER_REMOTE_ACCESS="no"' to 'DISPLAYMANAGER_REMOTE_ACCESS="yes"'

        然后使用rcxdm restart命令來重啟xdm服務(wù),一定要有/opt/kde3/bin/kdm進(jìn)程存在,如果沒有使用rcxdm restart命令看看是否能重啟服務(wù),并且用netstat -a |grep xdm來看看端口是否在listen。

        或者是,YAST中的Network Service打開Remote Administration,然后運(yùn)行rcxdm restart。

        VNC

        用root用戶更改/root/.vnc下的xstart文件,然后注釋最后一行,再加上gnome - session &

        執(zhí)行vncstart,這樣就可以通過VNC連接了,如果不更改xstart文件,也可以通過vncstart打開VNC連接,但在客戶端連接后出現(xiàn)的是命令行窗口,和ssh類似。

    posted @ 2007-10-19 13:20 Flyingis 閱讀(4522) | 評論 (0)編輯 收藏

    分布式部署 ArcSDE 和 Oracle 服務(wù)

         摘要: 經(jīng)常輾轉(zhuǎn)于各種服務(wù)器之間,漂浮于各種主流操作系統(tǒng)(AIX/Solaris/SuSE/RH/Windows)之上,被Windows慣壞了之后面對其他環(huán)境時經(jīng)常會發(fā)現(xiàn)自己才疏學(xué)淺,有時間還是要惡補(bǔ)一下這些筆記,否則下次自己又忘了~~  閱讀全文

    posted @ 2007-10-14 22:43 Flyingis 閱讀(4198) | 評論 (1)編輯 收藏

    高效率編輯器 VIM-操作篇[轉(zhuǎn)載]

    原文鏈接:http://jmcpherson.org/editing.html
    翻譯鏈接:http://linuxtoy.org/archives/efficient-editing-with-vim.html


    這篇教程寫了在不同工作模式下使用 VIM 的一些基本技巧——即插入模式(insert mode), 命令模式(command mode), 存取文件等。目的是幫助剛剛接觸 VIM 的新手更加有效率的使用這個出色的編輯器。

    說明:在這篇文章里面,<C-X> 代表 Ctrl + X——就是按住 Ctrl 鍵然后再按 X。而且你可以在很多情況下使用 :help command 來獲得大部分命令的幫助,這個是 VIM 的內(nèi)部幫助文件命令。


    高效率移動

    在插入模式之外

    基本上來說,你應(yīng)該盡可能少的呆在插入模式里面,因?yàn)樵诓迦肽J嚼锩?VIM 就像一個“啞巴”編輯器一樣。很多新手都會一直呆在插入模式里面,因?yàn)檫@樣易于使用。但 VIM 的強(qiáng)大之處在于他的命令行模式!你會發(fā)現(xiàn),在你越來越了解 VIM 之后,你就會花越來越少的時間使用插入模式了。

    使用 h、j、k、l

    使用 VIM 高效率編輯的第一步,就是放棄使用箭頭鍵。使用 VIM,你就不用頻繁的在箭頭鍵和字母鍵之間移來移去了,這會節(jié)省你很多時間。當(dāng)你在命令模式時,你可以用 h、j、k、l 來分別實(shí)現(xiàn)左、下、上、右箭頭的功能。一開始可能需要適應(yīng)一下,但一旦習(xí)慣這種方式,你就會發(fā)現(xiàn)這樣操作的高效之處了。

    在你編輯你的電子郵件或者其他有段落的文本時,你可能會發(fā)現(xiàn)使用方向鍵和你預(yù)期的效果不一樣,有時候可能會一次跳過了很多行。這是因?yàn)槟愕亩温湓? VIM 看來是一個大的長長的行。這時你可以在按 h、j、k 或者 l 之前鍵入一個 g,這樣 VIM 就會按屏幕上面的行如你所愿的移動了。

    在當(dāng)前行里面有效的移動光標(biāo)

    很多編輯器只提供了簡單的命令來控制光標(biāo)的移動(比如左、上、右、下、到行首/尾等)。VIM 則提供了很多強(qiáng)大的命令來滿足你控制光標(biāo)的欲望。當(dāng)光標(biāo)從一點(diǎn)移動到另外一點(diǎn),在這兩點(diǎn)之間的文本(包括這兩個點(diǎn))稱作被“跨過”,這里的命令也被稱作是 motion。(簡單說明一下,后面會用到這個重要的概念)

    這里是常用到的一些命令(motion):

    • fx:移動光標(biāo)到當(dāng)前行的下一個 x 處。很明顯,x 可以是任意一個字母,而且你可以使用 ; 來重復(fù)你的上一個 f 命令。
    • tx:和上面的命令類似,但是是移動到 x 的左邊一個位置。(這真的很有用)
    • Fx:和 fx 類似,不過是往回找。
    • w:光標(biāo)往前移動一個詞。
    • b:光標(biāo)往后移動一個詞。
    • 0:移動光標(biāo)到當(dāng)前行首。
    • ^:移動光標(biāo)到當(dāng)前行的第一個字母位置。
    • $:移動光標(biāo)到行尾。
    • ):移動光標(biāo)到下一個句子。
    • ( :移動光標(biāo)到上一個句子。

    在整個文件里面有效移動光標(biāo)

    VIM 有很多命令,可以用來到達(dá)文件里面你想到達(dá)的地方。下面是一些在文件里面移動的命令:

    • <C-F>:向下移動一屏。
    • <C-B>:向上移動一屏。
    • G:到文件尾
    • numG:移動光標(biāo)到指定的行(num)。(比如 10G 就是到第 10 行)
    • gg:到文件首
    • H:移動光標(biāo)到屏幕上面
    • M:移動光標(biāo)到屏幕中間
    • L:移動光標(biāo)到屏幕下面
    • *:讀取光標(biāo)處的字符串,并且移動光標(biāo)到它再次出現(xiàn)的地方。
    • #:和上面的類似,但是是往反方向?qū)ふ摇?/li>
    • /text:從當(dāng)前光標(biāo)處開始搜索字符串 text,并且到達(dá) text 出現(xiàn)的地方。必須使用回車來開始這個搜索命令。如果想重復(fù)上次的搜索的話,按 n。
    • ?text:和上面類似,但是是反方向。
    • ma:在當(dāng)前光標(biāo)的位置標(biāo)記一個書簽,名字為 a。書簽名只能是小寫字母。你看不見書簽的存在,但它確實(shí)已經(jīng)在那里了。
    • `a:到書簽 a 處。注意這個不是單引號,它一般位于大部分鍵盤的 1 的左邊。
    • `.:到你上次編輯文件的地方。這個命令很有用,而且你不用自己去標(biāo)記它。

    高效的輸入

    使用關(guān)鍵詞自動完成

    VIM 有一個非常漂亮的關(guān)鍵詞自動完成系統(tǒng)。這表示,你可以輸入一個長詞的一部分,然后按一下某個鍵,然后 VIM 就替你完成了這個長詞的輸入了。舉個例子:你有一個變量名為 iAmALongAndAwkwardVarName 在你寫的代碼的某個地方。也許你不想每回都自己一個一個字母的去輸入它。

    使用關(guān)鍵詞自動完成功能,你只需要輸入開始幾個字母(比如 iAmAL),然后按 <C-N>(按住 Ctrl,再按 N)或者 <C-P>。如果 VIM 沒有給出你想要的詞,繼續(xù)按,直到你滿意為止,VIM 會一直循環(huán)它找到的匹配的字符串。

    聰明的進(jìn)入插入模式

    很多新手進(jìn)入插入模式都只是用 i。這樣當(dāng)然可以進(jìn)入插入模式,但通常不是那么合適,因?yàn)?VIM 提供了很多進(jìn)入插入模式的命令。下面是最常用的一些:

    • i:在當(dāng)前字符的左邊插入
    • I:在當(dāng)前行首插入
    • a:在當(dāng)前字符的右邊插入
    • A:在當(dāng)前行尾插入
    • o:在當(dāng)前行下面插入一個新行
    • O:在當(dāng)前行上面插入一個新行
    • c{motion}:刪除 motion 命令跨過的字符,并且進(jìn)入插入模式。比如:c$,這將會刪除從光標(biāo)位置到行尾的字符并且進(jìn)入插入模式。ct!,這會刪除從光標(biāo)位置到下一個嘆號(但不包 括),然后進(jìn)入插入模式。被刪除的字符被存在了剪貼板里面,并且可以再粘貼出來。
    • d{motion}:和上面差不多,但是不進(jìn)入插入模式。

    有效的移動大段的文本

    使用可視選擇(visual selections)和合適的選擇模式

    不像最初的 VI,VIM 允許你高亮(選擇)一些文本,并且進(jìn)行操作。這里有三種可視選擇模式:

    • v:按字符選擇。經(jīng)常使用的模式,所以親自嘗試一下它。
    • V:按行選擇。這在你想拷貝或者移動很多行的文本的時候特別有用。
    • <C-V>:按塊選擇。非常強(qiáng)大,只在很少的編輯器中才有這樣的功能。你可以選擇一個矩形塊,并且在這個矩形里面的文本會被高亮。

    在選擇模式的時候使用上面所述的方向鍵和命令(motion)。比如,vwww,會高亮光標(biāo)前面的三個詞。Vjj 將會高亮當(dāng)前行以及下面兩行。

    在可視選擇模式下剪切和拷貝

    一旦你高亮了選區(qū),你或許想進(jìn)行一些操作:

    • d:剪貼選擇的內(nèi)容到剪貼板。
    • y:拷貝選擇的內(nèi)容到剪貼板。
    • c:剪貼選擇的內(nèi)容到剪貼板并且進(jìn)入插入模式。

    在非可視選擇模式下剪切和拷貝

    如果你很清楚的知道你想拷貝或者剪切什么,那你根本就不需要進(jìn)入可視選擇模式。這樣也會節(jié)省時間:

    • d{motion}:剪切 motion 命令跨過的字符到剪貼板。比如,dw 會剪切一個詞而 dfS 會將從當(dāng)前光標(biāo)到下一個 S 之間的字符剪切至剪貼板。
    • y{motion}:和上面類似,不過是拷貝。
    • c{motion}:和 d{motion} 類似,不過最后進(jìn)入插入模式。
    • dd:剪切當(dāng)前行。
    • yy:拷貝當(dāng)前行。
    • cc:剪切當(dāng)前行并且進(jìn)入插入模式。
    • D:剪切從光標(biāo)位置到行尾到剪貼板。
    • Y:拷貝當(dāng)前行。
    • C:和 D 類似,最后進(jìn)入插入模式。
    • x:剪切當(dāng)前字符到剪貼板。
    • s:和x類似,不過最后進(jìn)入插入模式。

    粘貼

    粘貼很簡單,按 p。

    使用多重剪貼板

    很多編輯器都只提供了一個剪貼板。VIM 有很多。剪貼板在 VIM 里面被稱為寄存器(Registers)。你可以列出當(dāng)前定義的所有寄存器名和它們的內(nèi)容,命令為“:reg”。最好使用小寫字母來作為寄存器的名稱,因?yàn)榇髮懙挠行┍?VIM 占用了。

    使用寄存器的命令為雙引號 “。

    比如:我們要拷貝當(dāng)前行到寄存器 k。你應(yīng)該按 “kyy。(你也可以使用 V”ky。為什么這樣也可以呢?)現(xiàn)在當(dāng)前行應(yīng)該已經(jīng)存在了寄存器 k 里面直到你又拷貝了一些東西進(jìn)入寄存器 k。現(xiàn)在你可以使用命令 “kp 來粘貼寄存器 k 里面的內(nèi)容到你想要的位置。

    避免重復(fù)

    令人驚奇的 . 命令

    在 VI 里面,輸入 . (小數(shù)點(diǎn)符號),將會重復(fù)你輸入的上一個命令。比如,你上個命令為“dw”(刪除一個詞),VI 將會接著再刪除一個詞。

    使用數(shù)字

    使用數(shù)字也是 VIM 強(qiáng)大的而且很節(jié)省時間的重要特性之一。在很多 VIM 的命令之前都可以使用一個數(shù)字,這個數(shù)字將會告訴 VIM 這個命令需要執(zhí)行幾次。比如:

    • 3j 將會把光標(biāo)向下移動三行。
    • 10dd 將會刪除十行。
    • y3″ 將會拷貝從當(dāng)前光標(biāo)到第三個出現(xiàn)的引號之間的內(nèi)容到剪貼板。

    數(shù)字是擴(kuò)展 motion 命令作用域非常有效的方法。

    記錄宏

    有時候,你會發(fā)現(xiàn)你自己在文章的每段或者每行都重復(fù)相同的一系列動作。VIM 允許你記錄一個宏來完成你的特殊需要。

    • qregister:記錄宏到寄存器 register,這里 register 是任意的你的寄存器的名字。比如 qa,將會記錄并且把宏存在寄存器 a 里面。
    • q:結(jié)束宏的記錄。
    • @register:使用存在寄存器 register 的宏。比如 @a,將會使用存在寄存器 a 里面的宏。

    必須要記住的是,宏只記錄了你的系列按鍵并且重復(fù)執(zhí)行它們。它們不是魔法。因?yàn)樵?VIM 里面完成目的的方法有很多,所以有時候你要小心選擇命令來記錄你的宏。因?yàn)樗鼈儠谒心阋獔?zhí)行它的地方執(zhí)行。

    用 VIM 寫代碼

    VIM 是一個用來寫代碼的絕好編輯器,因?yàn)樗幸恍┨匦允菍iT為程序員而設(shè)計的。這里是一些常用的:

    • ]p:和 p 的功能差不多,但是它會自動調(diào)整被粘貼的文本的縮進(jìn)去適應(yīng)當(dāng)前代碼的位置。試一下!
    • %:匹配花括號、方括號、括號等。在一個括號的上面,然后按 %,鼠標(biāo)就會出現(xiàn)在匹配的另外一半括號處。
    • >>:縮進(jìn)所有選擇的代碼
    • <<:和上面類似,但是反縮進(jìn)
    • gd:到達(dá)光標(biāo)所在處函數(shù)或者變量的定義處。
    • K:在 Man 里面查找光標(biāo)當(dāng)前所在處的詞。

    posted @ 2007-09-16 14:10 Flyingis 閱讀(3446) | 評論 (0)編輯 收藏

    AIX 和 Linux 基于 NFS 實(shí)現(xiàn)共享

         摘要: 這是ArcIMS在SuSE和AIX(1 suse+n aix)上分布式部署時的一個細(xì)節(jié)。  閱讀全文

    posted @ 2007-09-12 14:47 Flyingis 閱讀(4496) | 評論 (0)編輯 收藏

    又一個升級補(bǔ)丁引發(fā)的 arcgisserver cache 問題

        成功創(chuàng)建了地圖cache或?qū)rcgis server補(bǔ)丁升級到最新版本后,出現(xiàn)arcgis catalog及web應(yīng)用程序不能識別的情況,這是由于arcgis桌面軟件和arcgis server的補(bǔ)丁不是同一個版本造成的,如server已經(jīng)升級到9.2 sp3,arcgis desktop還是sp2,解決方法就是將軟件補(bǔ)丁版本同步。

        大家都知道不同版本的ArcGIS軟件不能安裝在同一臺計算機(jī)上,如Desktop 9.1和ArcGIS Engine 9.2不能共存,在一臺計算機(jī)上必須保證版本一致,其實(shí)同一版本下的補(bǔ)丁也是一樣,ESRI官方網(wǎng)站釋放出補(bǔ)丁時都會有說明,所以盡量不要被這種問題拖了后腿:)

    posted @ 2007-09-07 18:04 Flyingis 閱讀(2448) | 評論 (0)編輯 收藏

    升級 ArcGIS Server 9.2 sp3 補(bǔ)丁

        作者:Flyingis

        下午花了一個半小時打上了ArcGIS 9.2 sp3全套補(bǔ)丁,現(xiàn)在ESRI發(fā)布補(bǔ)丁的速度大大快于以往,打補(bǔ)丁的速度越來越慢,這從側(cè)面反應(yīng)出了程序存在的bug,但相對于9.2剛剛發(fā)步的時候,現(xiàn)在sp3已經(jīng)完善許多了。

        ArcGIS Server 9.2 sp3解決了不少問題,強(qiáng)烈推薦最新使用server開發(fā)的項目先打上補(bǔ)丁,原有的9.2程序也可以運(yùn)行在新補(bǔ)丁的環(huán)境中,暫時沒碰到什么問題,但是如果做了大量的cache,升級sp3補(bǔ)丁的時候就需要注意了!

        因?yàn)閟erver補(bǔ)丁升級后會進(jìn)行post installation,重新指定arcgisserver目錄,該目錄下所有文件的權(quán)限都會進(jìn)行一次更新,如果之前生成了大量cache,更新權(quán)限會消耗大量的時間和計算機(jī)資源,以至于感覺計算機(jī)宕機(jī),因此需要采用其他辦法來解決這個問題——偷梁換柱,再換回:)

    1.停止server服務(wù)。
    2.重命名現(xiàn)有的arcgisserver文件夾。
    3.進(jìn)行post installation,注銷重新登錄計算機(jī),再次停止server服務(wù)(post后服務(wù)會自動啟動)。
    4.刪除post后生成cache目錄。
    5.將原來arcgisserver備份文件夾中的cache目錄移動到post生成的arcgisserver目錄中。
    6.重新啟動server服務(wù)。

        OK,這樣就省事了。

        參考:ESRI Support, Article ID 32766

    posted @ 2007-09-04 16:45 Flyingis 閱讀(2857) | 評論 (1)編輯 收藏

    ArcGIS Server 開發(fā)系列(二)--Web ADF 編程

         摘要: 目標(biāo):
    根據(jù)查詢語句實(shí)現(xiàn)圖層信息查詢
    準(zhǔn)備工作:
    1.Windows XP sp2中/英文版
    2.Visual Studio 2005中/英文版
    3.ArcGIS Server 9.2(我打上了sp2補(bǔ)丁),創(chuàng)建一個ArcGIS Server服務(wù),Map Server屬性中更改Pooling,使用池化連接方式,Progresses選擇“In a seperate process for each instance(high isolation)”,我的服務(wù)為“World”
    4.利用vs2005創(chuàng)建一個模板server應(yīng)用--Web Mapping Application,并更改MapResourceManager屬性  閱讀全文

    posted @ 2007-08-14 13:55 Flyingis 閱讀(7160) | 評論 (10)編輯 收藏

    ArcGIS Server 開發(fā)系列(一)--編程框架總覽

         摘要: 理論性的描述總是讓人覺得有點(diǎn)枯燥,但是做ArcGIS Server編程,不論是用.Net ADF還是Java ADF,都需要對Server開發(fā)的基本框架有所了解,這樣在后面的代碼編寫中才能逐步理解這些架構(gòu)的設(shè)計思想。  閱讀全文

    posted @ 2007-08-09 15:54 Flyingis 閱讀(6553) | 評論 (2)編輯 收藏

    ESRI 發(fā)布 ArcGIS 9.2 sp3

        很準(zhǔn)時,2007年8月1日ESRI發(fā)布了ArcGIS 9.2 sp3補(bǔ)丁,相對于美國時間就是7月的最后一天,大家可以到ESRI官方網(wǎng)站上去下載,至于補(bǔ)丁所包含最新的改進(jìn)可以參考上篇文章:http://www.tkk7.com/flyingis/archive/2007/07/17/130822.html

    posted @ 2007-08-07 15:28 Flyingis 閱讀(2526) | 評論 (0)編輯 收藏

    ArcGIS 9.2 Service Pack 3 - Announcement

         摘要: ESRI網(wǎng)站上已經(jīng)帖出ArcGIS 9.2 sp3的說明,提供下載的時間就是本月底了,看看有哪些更新。
    http://support.esri.com/index.cfm?fa=downloads.patchesServicePacks.viewPatch&PID=17&MetaID=1319  閱讀全文

    posted @ 2007-07-17 14:26 Flyingis 閱讀(11109) | 評論 (0)編輯 收藏

    AE92 for Java 中手動釋放 COM 對象

        作者:Flyingis 

        用Java進(jìn)行ArcEngine或ArcGIS Server開發(fā),在底層實(shí)際上是用Java調(diào)用AO COM對象,ESRI用Jintegra庫來解決Java對COM的調(diào)用問題,如果Java對象不再使用,Java虛擬機(jī)會自動將這些對象回收,然后 Jintegra將這些對象所指的實(shí)際COM對象銷毀,默認(rèn)情況下時間間隔是10秒,對于快速大量調(diào)用COM對象的操作來說,如在循環(huán)中,COM對象往往得不到及時的銷毀,以至于內(nèi)存報錯,這時我們需要手動銷毀COM。

        Jintegra釋放方法:

        com.linar.jintegra.Cleaner.release(objectRef);

        在ArcEngine和ArcGIS Server中如何釋放COM呢?Jintegra為ArcObjects生成了一組proxy類,可以參考com.esri.arcgis.interop命名空間,經(jīng)常用的是 com.esri.arcgis.interop.Cleaner,它的release(java.lang.Object anObject)和releaseAll()用來釋放指定的或所有的COM對象,同時可以為COM連接和釋放增加監(jiān)聽, addConnectionListener(ConnectionListener listener)和allUnreferencedListener(Unreferenced listener)。

        同時可以參考:

        HowTo:  Explicitly release a COM object accessed in a Java application
        J-Integra for COM Document
        Garbage Collection: Releasing Java References to COM Objects
        Java調(diào)用COM的中間件Jintegra初探

    posted @ 2007-07-09 14:10 Flyingis 閱讀(3706) | 評論 (1)編輯 收藏

    ArcIMS[err0143] 解決方法

         摘要: "Unable to display mapservice:[err0143] server not available for service ...",這是出現(xiàn)錯誤時網(wǎng)頁的提示,應(yīng)該如何解決這個問題呢?請繼續(xù)往下看……  閱讀全文

    posted @ 2007-06-29 13:49 Flyingis 閱讀(4516) | 評論 (0)編輯 收藏

    ArcGIS Server 體系結(jié)構(gòu)

         摘要: ArcGIS Server包含兩個重要部分,一個是ArcGIS Server服務(wù)器端(SOM/SOCs),另外就是用于客戶端開發(fā)的ADF(Application Developer Framework)程序集,包括adf for java和adf for .net。在掌握ArcGIS Server開發(fā)之前,先看看ArcGIS Server的體系架構(gòu)。  閱讀全文

    posted @ 2007-06-29 09:20 Flyingis 閱讀(5768) | 評論 (3)編輯 收藏

    ArcGIS Desktop 9.2 非版本編輯

        作者:Flyingis

        ArcGIS Desktop 9.2開始支持非版本編輯,和標(biāo)準(zhǔn)的數(shù)據(jù)庫事務(wù)處理一樣,ArcSDE非版本編輯直接對原數(shù)據(jù)進(jìn)行編輯,非版本編輯的session不保存任何對數(shù)據(jù)的更改,在ArcMap中對數(shù)據(jù)start edit,然后對數(shù)據(jù)進(jìn)行增、刪、改,或是修改屬性信息,完成后執(zhí)行save edit就可以將Geodatabase中的數(shù)據(jù)直接更新,否則edit session without saving放棄之前的修改。在這種模式下處理數(shù)據(jù)會存在一些問題,如當(dāng)某一段編輯過程中出現(xiàn)問題時不能放棄或恢復(fù)修改,要么只能退出整個session的編輯放棄所有的修改。

        使用ArcSDE非版本編輯可以針對簡單數(shù)據(jù)進(jìn)行處理--點(diǎn)、線、面、注記、relationship,如果feature class存在于拓?fù)浠蚓W(wǎng)絡(luò)中,則不能進(jìn)行編輯。

        ArcMap中進(jìn)行非版本編輯需要注意:

        1.數(shù)據(jù)已經(jīng)registered with the geodatabase

        所有ArcGIS Desktop創(chuàng)建的數(shù)據(jù)會自動registered with the geodatabase,只有當(dāng)數(shù)據(jù)是在ArcGIS Desktop外創(chuàng)建時(如sdetable命令創(chuàng)建)才需要手動注冊。一般我們可以在ArcCatalog中看到空間數(shù)據(jù)的Register with Geodatabase為灰色的。

        2.數(shù)據(jù)沒有registered as versioned

        如果數(shù)據(jù)已經(jīng)注冊為版本,可以unregister as versioned,這時之前該版本中沒有提交的數(shù)據(jù)會丟失。

        3.配置ArcMap編輯進(jìn)程的屬性

        取消“Edit a version of the database with the ability to undo and redo”選項。

        編輯非版本Geodatabase數(shù)據(jù)庫中的數(shù)據(jù),需要注意DBMS的一些特性:同步與鎖、隔離機(jī)制、數(shù)據(jù)完整性等,以后再說吧。

    posted @ 2007-06-25 22:49 Flyingis 閱讀(2917) | 評論 (3)編輯 收藏

    [Design Pattern] The Factory Pattern

         摘要: 對工廠模式的重復(fù)羅嗦,用Factory生產(chǎn)Thinkpad。  閱讀全文

    posted @ 2007-06-17 15:01 Flyingis 閱讀(3637) | 評論 (2)編輯 收藏

    SuSE 9.1 平臺 ArcIMS(JRE) 中文顯示解決方案

         摘要: 最初以為是操作系統(tǒng)的字體顯示問題,但SuSE9.1本身是包含中文字體的,很容易讓我們想到了JRE。

    文章標(biāo)題為《SuSE 9.1 平臺 ArcIMS 中文顯示解決方案》,ArcIMS運(yùn)行于JRE環(huán)境之上,因此問題的根本在于SuSE9.1平臺下JRE運(yùn)行時環(huán)境的中文顯示,通過文中介紹的方案可以解決SuSE9.1操作系統(tǒng)中運(yùn)行于JRE之上的所有應(yīng)用程序的中文顯示問題,如ArcIMS Author打開SDE空間數(shù)據(jù)庫時以中文命名的表無法顯示,數(shù)據(jù)屬性字段中的中文顯示為亂碼等等。  閱讀全文

    posted @ 2007-05-28 09:29 Flyingis 閱讀(3733) | 評論 (1)編輯 收藏

    Spatial Reference

         摘要: 空間參考是GIS的基礎(chǔ),失去了空間參考信息,地理空間內(nèi)所有的信息也就失去了存在的意義,因?yàn)樗鼈兪遣粶?zhǔn)確的或是錯誤的。看看ArcGIS9.2對于Spatial Reference的描述及如何編程實(shí)現(xiàn)。

    文章中代碼使用C#描述,AE92 for Java SDK的com.esri.arcgis.geometry中各種接口、實(shí)現(xiàn)方式和C#基本一致,可以使用相同的思路來解決AE Java開發(fā)中關(guān)于Spatial Reference的問題。  閱讀全文

    posted @ 2007-05-10 14:43 Flyingis 閱讀(5046) | 評論 (2)編輯 收藏

    ArcSDE 9.1 在 Windows 平臺雙機(jī)熱備

         摘要: 一直沒有時間整理各種平臺下ESRI軟件安裝文檔,只能簡單描述一下,有什么問題可以留言。  閱讀全文

    posted @ 2007-04-24 09:32 Flyingis 閱讀(3120) | 評論 (2)編輯 收藏

    Geometry 對象淺析

         摘要: ArcEngine Geometry庫定義了基本幾何圖形的矢量表達(dá)形式,頂級的幾何圖形有Points、Multipoints、Polylines、Polygons、Multipatches,Geodatabase和繪圖系統(tǒng)使用這些幾何圖形來定義其他各種形狀的特征和圖形,提供了編輯圖形的操作方法和地圖符號系統(tǒng)符號化特征數(shù)據(jù)的途徑。

    文章中代碼使用C#描述,AE92 for Java SDK的com.esri.arcgis.geometry中各種接口、實(shí)現(xiàn)方式和C#基本一致,可以使用相同的思路來解決AE Java開發(fā)中關(guān)于Geometry的問題。  閱讀全文

    posted @ 2007-04-19 14:15 Flyingis 閱讀(4936) | 評論 (4)編輯 收藏

    ArcGIS 9.2 SP2 補(bǔ)丁開始提供下載

    2007年4月16日ESRI正式發(fā)布ArcGIS 9.2 SP2補(bǔ)丁下載

    ArcGIS 9.2 Service Pack 2
    (包括ArcGIS Desktop、ArcGIS Desktop開發(fā)包、ArcEngine SDK、ArcEngine Runtime、ArcGIS Server、ArcGIS Server WebADF Runtime升級補(bǔ)丁包)
    http://support.esri.com/index.cfm?fa=downloads.patchesServicePacks.viewPatch&PID=66&MetaID=1270

    ArcIMS 9.2 Service Pack 2
    http://support.esri.com/index.cfm?fa=downloads.patchesServicePacks.viewPatch&PID=16&MetaID=1271

    ArcSDE 9.2 Service Pack 2
    http://support.esri.com/index.cfm?fa=downloads.patchesServicePacks.viewPatch&PID=66&MetaID=1269

    SP補(bǔ)丁體積不斷增加似乎是當(dāng)今軟件發(fā)展的趨勢,這次釋放出的升級包中,桌面幫助、Server等升級包都超過了200M,補(bǔ)丁升級過程耗時也較長,準(zhǔn)備升級之前需做好重要數(shù)據(jù)備份,參考網(wǎng)站上的說明進(jìn)行。

    ArcGIS 9.2 SP2補(bǔ)丁的改進(jìn),請參考這里:
    http://downloads.esri.com/support/downloads/other_/ArcGIS-92sp2-issues.htm
    http://downloads.esri.com/support/downloads/ims_/ArcIMS_92sp2_issues.htm
    http://gisupdates.esri.com/92sp2/ArcSDE-Windows-UNIX-Linux/ArcSDE-92sp2-issues.htm

    posted @ 2007-04-17 10:06 Flyingis 閱讀(4752) | 評論 (0)編輯 收藏

    用多邊形裁剪影像文件

         摘要: 裁剪方式分為矩形裁剪和多邊形裁剪。  閱讀全文

    posted @ 2007-04-12 11:23 Flyingis 閱讀(4884) | 評論 (1)編輯 收藏

    Geoprocessing 消息機(jī)制

        作者:Flyingis

        ArcToolbox每個工具執(zhí)行之后,都會向Geoprocessor返回消息,包括操作何時開始,使用哪些參數(shù),操作的進(jìn)度,以及可能出現(xiàn)的問題和錯誤。消息的種類包括常規(guī)消息、警告、錯誤,GPMessage類可以包含消息的文本及嚴(yán)重等級。

        首先,Geoprocessor.getMessage()方法可以捕獲最后一個工具執(zhí)行后返回的錯誤消息

    String messages = gp.getMessages(2);
    System.out.println(messages);

        如何使用GPMessage

    //if there was an error then you want to loop the messages
    //returned by the geoprocessor to look for the error
    GPMessages gpMessages = (GPMessages)gp.getReturnMessages();
    for(int i = 0;  i gpMessages.getCount(); i++{
          System.out.println(gpMessages.getMessage(i).getDescription());
    }

        可以看出,上面都是通過GeoProcessor的方法來獲取消息,除此之外還可以使用IGeoProcessorResult接口,從功能上來說它們沒有多少區(qū)別。

    // Execute Union
    IGeoProcessorResult pResult = gp.execute(uniontool, null); 
    if (pResult.getMessageCount() > 0)  
          
    for(int i = 0;  i <= pResult.getMessageCount() - 1; i++){
                System.out.println(pResult.getMessageCount());
          }

    }

        另外我們還可以自定義輸出的方法,根據(jù)程序執(zhí)行的過程,可以添加的方法有AddMessage、AddWarning、AddError。下面的示例將feature class從一個工作區(qū)復(fù)制到另外一個工作區(qū),并跟蹤顯示每個文件復(fù)制的情況。

    IGpEnumList fcs = gp.listFeatureClasses("""","");
    Copy copy 
    = new Copy();
    String fc 
    = fcs.next();
    while (! "".equals(fc)){
          gp.addMessage(
    "Copying " + fc + " to file gdb" );
          copy.setInData(fc);
          copy.setOutData(
    "C:/temp/eric.gdb" + "/" + fc);
          
    try {
                gp.execute(copy, 
    null);
          }
     catch (Exception e) {
                gp.addError(
    "COPY FAILED! " + gp.getMessage(2));
          }

          fc 
    = fcs.next();
    }

    posted @ 2007-04-10 15:58 Flyingis 閱讀(3592) | 評論 (0)編輯 收藏

    Geoprocessing 數(shù)據(jù)批處理

         摘要: ArcGIS使用者經(jīng)常要面對大量的數(shù)據(jù)處理工作,如果要在自己的程序中使用Geoprocessing,更多的時候我們是要進(jìn)行對數(shù)據(jù)進(jìn)行批處理分析,Geoprocessing為我們提供了豐富的批處理的功能。  閱讀全文

    posted @ 2007-04-05 15:07 Flyingis 閱讀(4505) | 評論 (2)編輯 收藏

    Vi 指令大全[轉(zhuǎn)載]

         摘要: 方便自己查閱,轉(zhuǎn)載Vi指令大全。  閱讀全文

    posted @ 2007-04-05 10:25 Flyingis 閱讀(2875) | 評論 (0)編輯 收藏

    學(xué)習(xí)在 ArcEngine 中使用 Geoprocessing

         摘要: Geoprocessing對于ArcGIS使用者來說,是一種非常方便實(shí)用的工具,它可以利用ArcToolbox中的各種工具為我們的地理空間工作流進(jìn)行框架建模,自動執(zhí)行空間分析與處理。現(xiàn)在ArcEngine 9.2單獨(dú)提供了com.esri.arcgis.geoprocessing.tools工具包,使得在二次開發(fā)中通過Geoprocessing構(gòu)建應(yīng)用模型,將ArcGIS眾多分析工具集成到我們的應(yīng)用中成為現(xiàn)實(shí)。看看在ArcEngine for Java環(huán)境中如何使用它。  閱讀全文

    posted @ 2007-04-04 17:23 Flyingis 閱讀(8944) | 評論 (1)編輯 收藏

    ArcGIS 9.1 升級到 9.2 部分文件格式不可讀的解決方法

         摘要: 機(jī)器上安裝了ArcGIS 9.1和Erdas Image,卸載ArcGIS 9.1安裝新版本9.2,發(fā)現(xiàn)img、tif、grid格式的文件均不可讀,其中打開img文件的時候提示"Raster Objects Data Error",卸載ArcGIS 9.2重裝ArcGIS 9.1,問題依舊。本文提供了解決方法。  閱讀全文

    posted @ 2007-03-15 17:21 Flyingis 閱讀(3872) | 評論 (2)編輯 收藏

    AE92 SDK for Java 窗體簡例

         摘要: 看看怎么用AE92 SDK for Java做簡單的窗體應(yīng)用。  閱讀全文

    posted @ 2007-03-09 12:41 Flyingis 閱讀(4950) | 評論 (2)編輯 收藏

    AE92 SDK for Java 最小示例學(xué)習(xí)

         摘要: ArcEngine 92 SDK for Java 最小示例學(xué)習(xí),類似于Java開發(fā)的第一個例子"Hello World",但要稍微復(fù)雜一點(diǎn)。整個過程清晰明了,通過這個例子我們可以順藤摸瓜,逐漸深入到AE的開發(fā)中。  閱讀全文

    posted @ 2007-03-08 16:21 Flyingis 閱讀(3640) | 評論 (0)編輯 收藏

    ArcGIS 坐標(biāo)系統(tǒng)文件

         摘要: 看看ArcGIS 9.2中包含的坐標(biāo)系統(tǒng)文件夾Geographic Coordinate Systems、Projected Coordinate Systems、Vertical Coordinate Systems的簡介,欣賞北京54和西安80投影坐標(biāo)系令人費(fèi)解的命名方式。  閱讀全文

    posted @ 2007-03-02 09:04 Flyingis 閱讀(13981) | 評論 (7)編輯 收藏

    地震為什么沒有影響到 Google

    原文鏈接:http://news.mydrivers.com/pages/20070120074305_14081.htm

    2006年底,臺灣海域地震,讓人們深刻感覺到互聯(lián)網(wǎng)的脆弱。在這次地震中,中美海纜、亞太一號、亞太二號海纜、FLAG海纜、亞歐海纜、FNAL海纜等多條國際海底通信光纜中斷。一時間,臺灣,韓國,日本,菲律賓,甚至印度的呼叫中心都受牽連;中國用戶幾乎無法訪問所有的美國網(wǎng)站以及網(wǎng)絡(luò)服務(wù),有些網(wǎng)站雖然可以勉強(qiáng)登入,但速度也讓人無法忍受。

    不過,與平時經(jīng)常被“屏蔽”相反,Google在此期間幾乎沒有受到影響,搜索引擎、Gmail以及Google旗下的其他服務(wù)都能夠在國內(nèi)正常訪問。

    事實(shí)上,連接中國與亞洲、美國以及歐洲的電纜有多個系統(tǒng)。臺灣地震只損害了一部分海底電纜,但并不是所有的電纜都出現(xiàn)了問題。這個時間段內(nèi),從中國接入國際互聯(lián)網(wǎng)的服務(wù),就取決于提供該服務(wù)的這個互聯(lián)網(wǎng)公司或者ISP購買的是哪些電纜系統(tǒng),在地震中是否受到損害。

    不過,還有另外一種情況存在:一些國際連接雖然沒有受到地震的影響,但是過多地負(fù)載了從其它損害的電纜轉(zhuǎn)道而來的信息流量,導(dǎo)致交通堵塞。

    Google使用了多網(wǎng)絡(luò)連接系統(tǒng),如果某個數(shù)據(jù)中心出了訪問障礙,系統(tǒng)會自動選擇其它的網(wǎng)絡(luò)路徑,由其它數(shù)據(jù)中心無縫地提供服務(wù)。

    在設(shè)計和實(shí)施時,Google在中國的服務(wù)網(wǎng)絡(luò)充分考慮了冗余要求,不會因?yàn)槠渌€路的擁擠而變得緩慢。因此,Google中國用戶感覺不到任何地震引起的變化。

    為什么Google成為此次地震事件中的特例?

    時間追溯到2002年2月,Google的一個數(shù)據(jù)中心的主電源跳閘,導(dǎo)致Google癱瘓了將近1個小時。有了這次教訓(xùn),Google便徹底改變了自己的文件系統(tǒng)分布。

    改進(jìn)后的Google文件分布系統(tǒng),即便一個擁有80臺電腦的支架被斷開連接,也能迅速完成再一次的備份,而且,并不中斷正常的服務(wù)。實(shí)際上,按照霍茨勒的說法,Google的“每臺服務(wù)器都有50個備份”。除此之外,多網(wǎng)絡(luò)連接模式應(yīng)用,也為服務(wù)穩(wěn)定提供了有效的硬件基礎(chǔ)。

    posted @ 2007-01-20 14:54 Flyingis 閱讀(2120) | 評論 (1)編輯 收藏

    shapefile 和 MapGIS 文件格式之間的轉(zhuǎn)換

         摘要: 這篇文章比較老了,還是在ArcGIS 8.3平臺下做的,這段時間一些朋友經(jīng)常問到這個問題,現(xiàn)在大家早已進(jìn)入ArcGIS 9.x時代,但還是可以參考一下,是否適用尚不知道,如有什么變化,歡迎大家寫在后面。  閱讀全文

    posted @ 2007-01-19 09:17 Flyingis 閱讀(4606) | 評論 (2)編輯 收藏

    全套 ArcGIS 軟件安裝(Windows 平臺)

         摘要: 雖然是Windows平臺下的安裝,但有時也經(jīng)常碰到棘手的問題,文章記錄的過程比較簡單,如果大家有什么疑問可以在后面留言。
    關(guān)于ESRI產(chǎn)品的安裝,以后還會寫,包括各種平臺下的,各種軟件搭配環(huán)境下的,有些我自己也是在學(xué)習(xí)的過程中,歡迎大家一起討論。  閱讀全文

    posted @ 2007-01-17 15:03 Flyingis 閱讀(3574) | 評論 (0)編輯 收藏

    GeoTools 2.3.0 release available for download

    2 January 2007 - GeoTools 2.3.0 release brings together a lot of great improvements made over the last year. The main focus of this release is improving the raster story for GeoTools. While plug-ins for a variety of rasters existed previously, all of them were memory constrained and not really suitable for real software.

    GeoTools 2.3.0 is available for download at:
    http://geotools.codehaus.org/2.3.0

    2.3.0 brings solid, scalable, fast support for ArcGrid, GeoTiff, GTOPO30, World Images and Image Mosaics and Pyramids. These are already in action in GeoServer 1.5.x, and will soon work their way into uDig (http://udig.refractions.net). In addition it offers:

    - GeoAPI filter interfaces aligned with Filter 1.1 specification
    - Completed providence review
    - More relaxed PostGIS support, able to handle older varied configurations
    - Scalar Vector Graphics "Marks" can be used as part of our SLD support
    - Improved plug-in visibility
    - Maven "archtype"
    - Numerous small bug fixes and improvements

    The following organizations, have contributed to this stable release: GeoSolutions for their RnD contributions appearing in this release, and OSGeo Foundation for their support during the incubation process.

    - About GeoTools
    GeoTools is an open source java GIS toolkit. Used for OGC based projects via GeoAPI interfaces. It includes two great SLD based renderers, raster access and reprojection. Plugins for Shapefile, ArcGrid, ArcSDE, Postgis, OracleSpatial, MySQL and many more.

    For more information visit:

    - http://docs.codehaus.org/display/GEOTOOLS
    - http://docs.codehaus.org/display/GEOTOOLS/Mailing+Lists
    - http://docs.codehaus.org/display/GEOTOOLS/Module+Matrix
    - http://docs.codehaus.org/display/GEOS/GeoServer+1.5.0+beta1

    Source :
    http://sourceforge.net

    From : http://www.gisdevelopment.net/news/viewn.asp?id=GIS:N_axrmhogkef

    posted @ 2007-01-10 22:25 Flyingis 閱讀(1875) | 評論 (0)編輯 收藏

    靜態(tài)設(shè)計

         摘要: 重新看看靜態(tài)設(shè)計的優(yōu)劣之處。  閱讀全文

    posted @ 2006-12-27 16:16 Flyingis 閱讀(2466) | 評論 (0)編輯 收藏

    初學(xué) Eclipse RCP

         摘要: 以前一直做WebGIS方面的工作,對桌面關(guān)心甚少。桌面開發(fā)讓人第一個想到的是VB6的快速開發(fā),以及VC++平臺中對效率的追求,VB.NET似乎找不到一個合適的定位。自己以后想逐步轉(zhuǎn)向桌面,畢竟桌面才是GIS的天下,在效率、可擴(kuò)展性、開發(fā)速度以及平臺可持續(xù)發(fā)展中權(quán)衡,讓我選擇了Eclipse RCP。  閱讀全文

    posted @ 2006-12-13 19:22 Flyingis 閱讀(3493) | 評論 (1)編輯 收藏

    亂談 GIS 中小型應(yīng)用

         摘要: 文章圍繞ESRI的產(chǎn)品討論。
    GIS中小型應(yīng)用,是采用ArcEngine+ArcIMS+ArcSDE+Oracle等豪華配置,還是有其他方案可以選擇?  閱讀全文

    posted @ 2006-11-28 22:14 Flyingis 閱讀(4111) | 評論 (10)編輯 收藏

    ArcSDE 中空間數(shù)據(jù)的備份與恢復(fù) [轉(zhuǎn)載]

    原文鏈接:http://www.gis8.net/Article/arcgis/200611/362.htm

    隨著GIS應(yīng)用系統(tǒng)在復(fù)雜性、集成性、并發(fā)性等方面的要求不斷增加,系統(tǒng)所需的空間數(shù)據(jù)量在急劇地增長,同時用戶對空間數(shù)據(jù)并發(fā)訪問的需求也越來越突出。以傳統(tǒng)的文件形式存儲和表示空間數(shù)據(jù)的方法顯然已經(jīng)無法滿足這些需求。由于ArcSDE本身所具有的海量數(shù)據(jù)存儲、多用戶并發(fā)訪問、版本管理、長事務(wù)處理等強(qiáng)大優(yōu)勢,在GIS應(yīng)用系統(tǒng)中引入ArcSDE作為空間數(shù)據(jù)存儲和管理引擎,變得越來越普遍。ArcSDE作為空間數(shù)據(jù)庫引擎,在ArcGIS 8.1系列軟件中屬于服務(wù)器端的產(chǎn)品,在整個產(chǎn)品框架中,處于數(shù)據(jù)中心的重要地位,它利用Oracle、DB2、SQL Server、Informix等關(guān)系型數(shù)據(jù)庫在數(shù)據(jù)存儲、數(shù)據(jù)完整性等方面的先進(jìn)技術(shù)手段,將海量空間數(shù)據(jù)(包括矢量數(shù)據(jù)和柵格數(shù)據(jù))有機(jī)地組織和管理起來,通過其內(nèi)部異步緩沖、空間索引等先進(jìn)的機(jī)制,提供對空間數(shù)據(jù)的多用戶高效并發(fā)訪問。

    除了存儲空間數(shù)據(jù)并提供訪問,對于空間數(shù)據(jù)的備份和恢復(fù),是空間數(shù)據(jù)管理中最重要的工作環(huán)節(jié)之一,也是保障空間數(shù)據(jù)安全的重要方式。首先,空間數(shù)據(jù)本身在應(yīng)用過程中不斷地被更新變動,所以經(jīng)常會需要備份不同時期,不同的空間數(shù)據(jù)版本;第二,存儲介質(zhì)的意外損壞會導(dǎo)致嚴(yán)重的空間數(shù)據(jù)丟失,因此需要定期對空間數(shù)據(jù)對象的整體進(jìn)行完全備份;第三,有時出于調(diào)整的必要,需要在不同服務(wù)器、甚至不同數(shù)據(jù)庫管理系統(tǒng)之間進(jìn)行空間數(shù)據(jù)的移植和轉(zhuǎn)換。

    在采用文件形式空間數(shù)據(jù)的時代,空間數(shù)據(jù)的備份僅僅是操作系統(tǒng)中的文件拷貝、備份和歸檔的過程;而空間數(shù)據(jù)的恢復(fù)也不過是復(fù)制、覆蓋的操作;在基于ArcSDE和關(guān)系型數(shù)據(jù)庫的空間數(shù)據(jù)庫時代,空間數(shù)據(jù)的備份更多的依賴于關(guān)系型數(shù)據(jù)庫的備份和恢復(fù)技術(shù),當(dāng)然也不能缺少ArcSDE所提供的備份工具。按照備份的方式和對象,ArcSDE中空間數(shù)據(jù)的備份和恢復(fù)可以分為如下兩類:指定空間數(shù)據(jù)對象的備份恢復(fù),和整體空間數(shù)據(jù)庫的備份恢復(fù)。

    一、 指定空間數(shù)據(jù)對象的備份和恢復(fù)
    這種方式主要用于備份指定的空間數(shù)據(jù)對象,比如某個圖層和要素類、其中的某些滿足特定條件的記錄、甚至特定的版本。實(shí)現(xiàn)這種備份方式的方法主要是利用ArcSDE提供的管理工具:sdeexport和sdeimport命令。它們的位置在%ArcSDEHOME%\bin\中。其中,sdeexport用于將空間數(shù)據(jù)從ArcSDE Server上備份為單獨(dú)的數(shù)據(jù)文件,而sdeimport用于將經(jīng)由sdeexport備份的數(shù)據(jù)文件恢復(fù)到ArcSDE Server中。

    這一方式的缺點(diǎn)在于不能一次備份完整的空間數(shù)據(jù)庫。但是也有個明顯的優(yōu)點(diǎn),在于通過sdeexport和sdeimport工具,可以將空間數(shù)據(jù)在不同的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS)之間進(jìn)行移植。

    1. 備份全部記錄
    使用sdeexport命令的缺省方式即可,比如:
    (1) 將指定的圖層備份到備份文件
    sdeexport -o create -l dcxq,shape -f d:\dcxq.exp -i jerry_oracle -u sde -p sde
    就是將名為jerry_oracle的sde服務(wù)(ArcSDE for Oracle8i)中的指定圖層“dcxq”按缺省方式備份到文件d:\dcxq.exp中。
    (2) 利用操作系統(tǒng)命令,拷貝備份文件到目標(biāo)服務(wù)器上
    (3) 將備份文件恢復(fù)至目標(biāo)RDBMS中
    sdeimport -o create -l newDcxq,shape -f d:\dcxq.exp -i jerry_sqlsvr -u sde -p sde
    此操作將備份文件恢復(fù)到名為jerry_sqlsvr的sde服務(wù)(ArcSDE for SQLServer)中,圖層名為:newDcxq。

    2. 備份部分記錄
    sdeexport命令中添加-w參數(shù)和一個條件選擇表達(dá)式即可,比如:
    (1) 將指定圖層中滿足條件的記錄備份到備份文件
    sdeexport -o create -l dcxq,shape -f d:\dcxq.exp -w xzqy = '徐匯區(qū)' -i jerry_oracle -u sde -p sde
    就是將名為jerry_oracle的sde服務(wù)(ArcSDE for Oracle8i)內(nèi)的指定圖層“dcxq”中所有"徐匯區(qū)"的人口調(diào)查小區(qū)備份到文件d:\dcxq.exp中。
    (2) 利用操作系統(tǒng)命令,拷貝備份文件到目標(biāo)服務(wù)器上
    (3) 將備份文件恢復(fù)至目標(biāo)RDBMS中
    sdeimport -o create -l XHDcxq,shape -f d:\dcxq.exp -i jerry_sqlsvr -u sde -p sde
    此操作將備份文件恢復(fù)到名為jerry_sqlsvr的sde服務(wù)(ArcSDE for SQLServer)中,圖層名為:XHDcxq。

    3. 備份特定數(shù)據(jù)版本
    sdeexport命令中添加-v參數(shù)和一個版本名稱即可,比如:
    (1) 將指定圖層的特定版本備份到備份文件
    sdeexport -o create -l dcxq,shape -f d:\dcxq.exp -V verAPR -i jerry_oracle -u sde -p sde
    此操作將名為jerry_oracle的sde服務(wù)(ArcSDE for Oracle8i)內(nèi)的指定圖層“dcxq”的verAPR版本備份到文件d:\dcxq.exp中。
    (2) 利用操作系統(tǒng)命令,拷貝備份文件到目標(biāo)服務(wù)器上
    (3) 將備份文件恢復(fù)至目標(biāo)RDBMS中
    sdeimport -o create -l APRdcxq,shape -f d:\dcxq.exp -i jerry_sqlsvr -u sde -p sde
    此操作將備份文件恢復(fù)到名為jerry_sqlsvr的sde服務(wù)(ArcSDE for SQLServer)中,圖層名為:APRDcxq。

    二、 整體空間數(shù)據(jù)庫的備份和恢復(fù)
    ArcSDE空間數(shù)據(jù)庫的整體備份和恢復(fù),實(shí)質(zhì)上很大程度上是其所在的數(shù)據(jù)庫或者數(shù)據(jù)庫對象的備份和恢復(fù)問題。當(dāng)然完整的ArcSDE數(shù)據(jù)備份應(yīng)當(dāng)還包括dbtune.sde,giomgr.defs,dbinit.sde和services.sde等文件。

    數(shù)據(jù)庫的備份和恢復(fù)有很多種類。在不同的數(shù)據(jù)庫管理系統(tǒng)中,更是千差萬別。總體上,大都可以分為靜態(tài)轉(zhuǎn)儲和動態(tài)轉(zhuǎn)儲兩個類型。靜態(tài)轉(zhuǎn)儲是在系統(tǒng)中無事務(wù)處理時進(jìn)行的轉(zhuǎn)儲操作,因而這種方式得到的一定是一個數(shù)據(jù)一致性的副本。靜態(tài)轉(zhuǎn)儲的優(yōu)點(diǎn)是操作簡單,保證數(shù)據(jù)一致性,但是缺點(diǎn)也很明顯,轉(zhuǎn)儲操作必須等待用戶事務(wù)結(jié)束才能進(jìn)行,而新的事務(wù)必須等待轉(zhuǎn)儲操作結(jié)束才能執(zhí)行,因此會降低數(shù)據(jù)庫的可用性。動態(tài)轉(zhuǎn)儲是指轉(zhuǎn)儲操作與用戶事務(wù)并發(fā)進(jìn)行,轉(zhuǎn)儲期間允許數(shù)據(jù)庫進(jìn)行存取和修改操作,它不必等待所有運(yùn)行的事務(wù)結(jié)束,也不會影響新事務(wù)的運(yùn)行,但是無法保證副本中的數(shù)據(jù)正確、有效、完整。所以在動態(tài)轉(zhuǎn)儲期間,往往會建立日志文件。后備文件加上日志文件就可以把數(shù)據(jù)庫恢復(fù)到正確的狀態(tài)。

    1. Oracle數(shù)據(jù)庫
    (1) 兩種歸檔模式(archive mode)
    Oracle有兩中歸檔模式:NO ARCHIVELOG和ARCHIVELOG。在NO ARCHIVELOG模式(該模式為缺省模式)下的數(shù)據(jù)庫操作不歸檔在線日志重做文件。當(dāng)存儲介質(zhì)損壞時,NO ARCHIVELOG模式的數(shù)據(jù)庫只能恢復(fù)到上一次的備份點(diǎn)上。ARCHIVELOG模式的數(shù)據(jù)庫可以通過上一次的備份和歸檔日志重做文件相結(jié)合的方式,恢復(fù)到介質(zhì)損壞之前的點(diǎn)上。
    以NO ARCHIVELOG模式創(chuàng)建的Oracle數(shù)據(jù)庫可以切換至ARCHIVELOG模式。
    (2) 多種備份與恢復(fù)方式
    Oracle中的數(shù)據(jù)備份和恢復(fù)方式包括:脫機(jī)備份與恢復(fù)、邏輯備份與恢復(fù)、熱備份與恢復(fù)。
    * 脫機(jī)備份與恢復(fù):脫機(jī)備份是一種靜態(tài)轉(zhuǎn)儲技術(shù),備份在數(shù)據(jù)庫關(guān)閉、不工作的狀態(tài)下進(jìn)行。脫機(jī)備份包括兩種實(shí)現(xiàn)方式:第一種是使用Oracle提供的工具Backup/Recover;第二種是利用操作系統(tǒng)的復(fù)制功能,復(fù)制數(shù)據(jù)文件,即:冷備份。
    * 邏輯備份與恢復(fù):邏輯備份與恢復(fù)是指將數(shù)據(jù)庫、用戶和表等對象的內(nèi)容整個轉(zhuǎn)出到一個二進(jìn)制文件,然后在需要的時候通過轉(zhuǎn)入恢復(fù)到原來的形式。這種方式可以備份整個數(shù)據(jù)庫,指定用戶和指定表的內(nèi)容。
    * 熱備份與恢復(fù):脫機(jī)備份和邏輯備份通常是用戶不訪問數(shù)據(jù)庫時的靜態(tài)備份操作。這些備份只保證數(shù)據(jù)備份前的一致性和完整性,不保證備份期間的數(shù)據(jù)一致性。為了保證數(shù)據(jù)的即時一致性,在備份數(shù)據(jù)的同時還需要備份日志文件。數(shù)據(jù)庫運(yùn)行在ARCHIVELOG方式下,同時作數(shù)據(jù)和日志文件的備份稱為熱備份。
    (3) 實(shí)現(xiàn)步驟
    選擇使用何種備份方式,由具體的數(shù)據(jù)備份需求所決定。具體的Oracle數(shù)據(jù)庫備份實(shí)現(xiàn)步驟需要參考Oracle相關(guān)文檔,比如《Oracle8 Backup and Recovery Guide》。本實(shí)例采用Oracle中的邏輯備份,使用了exp和imp工具,以sde用戶方式備份和恢復(fù)整體空間數(shù)據(jù)。
    * 備份數(shù)據(jù)庫:使用Oracle中的exp命令,以sde用戶方式備份所有相關(guān)數(shù)據(jù)。
    * 恢復(fù)數(shù)據(jù)庫:使用Oracle中的imp命令,以sde用戶方式恢復(fù)后備數(shù)據(jù)文件。
    * 恢復(fù)ArcSDE系統(tǒng)文件:如果有必要,在恢復(fù)oracle數(shù)據(jù)之后,需要恢復(fù)安裝ArcSDE的程序文件;另外還需要從備份機(jī)器上恢復(fù)dbtune,giomgr.defs,dbinit.sde,和services.sde文件。

    2. SQLServer數(shù)據(jù)庫
    (1)備份和恢復(fù)方式
    在MS SQL Server中,ArcSDE利用單獨(dú)的用戶數(shù)據(jù)庫SDE(缺省名)來管理和組織空間數(shù)據(jù)。
    SQLServer不僅可以在同一臺服務(wù)器上備份和恢復(fù)數(shù)據(jù)庫,還允許通過備份和恢復(fù)的方式在不同服務(wù)器之間很輕松地移動數(shù)據(jù)庫。MS SQL Server也允許將一個服務(wù)器上的數(shù)據(jù)庫備份恢復(fù)到另外一臺服務(wù)器上。
    如果要將數(shù)據(jù)庫備份恢復(fù)到另外一臺服務(wù)器上,兩臺服務(wù)器上的code page和排序方式必須相同。比如,不能把用二進(jìn)制排序方式(Binary Sort Order,BSO)建立的數(shù)據(jù)庫恢復(fù)到一個配置為缺省排序方式(字典順序,dictionary)的服務(wù)器上。當(dāng)然,可以通過在master數(shù)據(jù)庫中運(yùn)行'sp_helpsort'存儲過程設(shè)定服務(wù)器的排序方式。
    數(shù)據(jù)庫的備份操作同時備份了數(shù)據(jù)庫的系統(tǒng)表,包括sysusers。當(dāng)在不同的服務(wù)器上執(zhí)行備份和恢復(fù)操作時,備份數(shù)據(jù)庫中所包含的用戶可能會和新的服務(wù)器上master數(shù)據(jù)庫中sysxlogins表中包含的用戶不同。這樣的話,就無法登錄到恢復(fù)后的數(shù)據(jù)庫,知道更正并統(tǒng)一master數(shù)據(jù)庫中sysxlogins表和恢復(fù)數(shù)據(jù)庫中sysusers表的登錄映射。要使上述兩個表同步,需要運(yùn)行"sp_change_users_login"存儲過程。
    (2)實(shí)現(xiàn)步驟
    * 備份SDE數(shù)據(jù)庫到備份文件:既可以使用T-SQL中的BACKUP語句,也可以使用企業(yè)管理器中的備份工具向?qū)硗瓿蒘DE和其他空間數(shù)據(jù)庫的備份。
    * 將備份文件復(fù)制到目標(biāo)服務(wù)器
    * 將備份文件恢復(fù)到目標(biāo)服務(wù)器:可以使用企業(yè)管理器中的恢復(fù)還原工具向?qū)硗瓿蒘DE和其他空間數(shù)據(jù)庫的恢復(fù)。
    * 統(tǒng)一SDE用戶登錄映射
    A. 兩個服務(wù)器上都有SDE用戶,但是兩者的SDE用戶具有不同的標(biāo)識
    當(dāng)恢復(fù)SDE數(shù)據(jù)庫至新的服務(wù)器后,sde數(shù)據(jù)庫中的sde用戶的SID與master數(shù)據(jù)庫中dbo.sysxlogins表中的sde登錄名的SID不同,比如:
    Use sde
    go
    Select SID from sysusers where name = 'sde'
    Use master
    go
    select SID from sysxlogins where name = 'sde'

    SID
    -----------------------------------------------------------
    0x76695419BFAED41184FD00C04F8D0451
    (1 row(s) affected)

    SID
    -----------------------------------------------------------
    0xEDDFCA8E56B0D411850000C04F8D0451
    (1 row(s) affected)
    此時必須統(tǒng)一兩個表中sde用戶的SID標(biāo)識,運(yùn)行"sp_change_users_login" 存儲過程,示例如下:
        Use sde
    go
    sp_change_users_login 'update_one','sde','sde'
    運(yùn)行上述的SID查詢來驗(yàn)證修改結(jié)果:
    0xEDDFCA8E56B0D411850000C04F8D0451
    0xEDDFCA8E56B0D411850000C04F8D0451
    可以看出修改后兩個表中sde用戶的SID標(biāo)識完全一致,此時就可以啟動ArcSDE for SQLServer的服務(wù)來使用了。
    B. 目標(biāo)服務(wù)器上還沒有SDE用戶
    這種情形是指目標(biāo)服務(wù)器上還沒有sde登錄用戶,此時執(zhí)行上述的SID查詢,結(jié)果如下:
    Use sde
    go
    Select SID from sysusers where name = 'sde'
    Use master
    go
    select SID from sysxlogins where name = 'sde'
    SID
    -----------------------------------------------------------
    0x76695419BFAED41184FD00C04F8D0451
    (1 row(s) affected)
    SID
    -----------------------------------------------------------
    (0 row(s) affected)
    要矯正這種情況,需要首先到目標(biāo)服務(wù)器中添加sde登錄用戶,但是不要將sde數(shù)據(jù)庫的權(quán)限授予sde用戶。添加登錄用戶,使用"sp_addlogin"存儲過程和在企業(yè)管理器中使用登錄管理工具。比如:
    sp_addlogin 'sde','go','sde'
    然后需要運(yùn)行 "sp_change_users_login" 存儲過程來統(tǒng)一master內(nèi)dbo.sysxlogins表和恢復(fù)后用戶數(shù)據(jù)庫內(nèi)sysusers表中的sde用戶SID標(biāo)識。
    use sde
    go
    sp_change_users_login 'update_one','sde','sde'
    最后,可以執(zhí)行SID查詢來驗(yàn)證SID的一致性:
    Use sde
    Go
    Select SID from sysusers where name = 'sde'
    Use master
    Go
    select SID from sysxlogins where name = 'sde'
    SID
    -----------------------------------------------------------
    0xF6DFCA8E56B0D411850000C04F8D0451
    (1 row(s) affected)
    SID
    -----------------------------------------------------------
    0xF6DFCA8E56B0D411850000C04F8D0451
    (1 row(s) affected)
    經(jīng)過SDE用戶的SID的統(tǒng)一之后,就可以啟動ArcSDE服務(wù)或者使用直接連接(direct connection)方式使用恢復(fù)后的空間數(shù)據(jù)了。

    posted @ 2006-11-28 20:13 Flyingis 閱讀(2715) | 評論 (1)編輯 收藏

    [DWR文檔] WEB-INF 參考

         摘要: DWR中文文檔--WEB-INF 參考

    翻譯的方式采用中英文對照,翻譯的文字不會完全和英文一一對照,主要是為了在不失原意的情況下保證中文的閱讀理解習(xí)慣,當(dāng)然,翻譯的過程需要大家的支持,翻譯不妥的地方盡請拍磚、指正。  閱讀全文

    posted @ 2006-11-18 09:34 Flyingis 閱讀(5295) | 評論 (0)編輯 收藏

    DWR 中文文檔

         摘要: 我是DWR初學(xué)者,雖然DWR入門簡單,但還是想嘗試翻譯一下DWR的部分文檔,翻譯過程中自己會有更多的思考,翻譯的方式采用中英文對照,翻譯的文字不會完全和英文一一對照,主要是為了在不失原意的情況下保證中文的閱讀理解習(xí)慣,當(dāng)然,翻譯的過程需要大家的支持,翻譯不妥的地方盡請拍磚、指正。

    Jet Mah已經(jīng)開始翻譯DWR文檔,我將在他未翻譯的文檔中摘取比較重要的章節(jié)進(jìn)行翻譯,也算是對開源盡一點(diǎn)綿薄之力。我已翻譯的部分在Java Tang中也會留言給出鏈接。  閱讀全文

    posted @ 2006-11-18 09:15 Flyingis 閱讀(8353) | 評論 (2)編輯 收藏

    中國計劃建設(shè)自己的衛(wèi)星導(dǎo)航系統(tǒng)

    ??? 2006年11月3日,中國在北京宣布計劃建立一套自己的衛(wèi)星導(dǎo)航系統(tǒng),整個系統(tǒng)包含35顆衛(wèi)星,并于2008年在亞洲區(qū)域投入運(yùn)行。該系統(tǒng)名稱為“Beidou”,將包括五顆對地靜止軌道衛(wèi)星和三十顆中距離地球軌道衛(wèi)星,新華社通訊員11月2日。

    ??? 據(jù)報道,整個衛(wèi)星導(dǎo)航系統(tǒng)將提供兩套服務(wù),其中免費(fèi)服務(wù)面向大眾,許可認(rèn)證服務(wù)面向軍事方面。面向商業(yè)客戶的衛(wèi)星系統(tǒng)服務(wù)將提供10米的定位精度,速度分辨率為0.2米/秒,而時間分辨率在50*十億分之一秒以內(nèi)。關(guān)于整套系統(tǒng)的費(fèi)用沒有詳細(xì)的報道。

    ??? 在此之前,中國已經(jīng)加入了歐空局35億歐元伽利略計劃研發(fā)衛(wèi)星導(dǎo)航系統(tǒng),以擺脫美國軍用全球衛(wèi)星導(dǎo)航系統(tǒng)的壟斷。

    ??? 詳細(xì)信息可以訪問(英文):
    ??? http://www.chinadaily.com.cn/china/2006-11/03/content_723687.htm

    posted @ 2006-11-14 22:26 Flyingis 閱讀(1326) | 評論 (2)編輯 收藏

    主站蜘蛛池模板: 免费无码成人AV在线播放不卡| 免费精品无码AV片在线观看| 亚洲精品国产av成拍色拍| 亚洲av再在线观看| 免费成人在线观看| 久久久久久国产a免费观看黄色大片 | 一级做a爱片特黄在线观看免费看| 亚洲av无码一区二区三区四区| 亚洲午夜在线电影| 九月婷婷亚洲综合在线| 免费看片在线观看| 亚洲精品动漫免费二区| 女人张腿给男人桶视频免费版| 久久免费看少妇高潮V片特黄| 免费网站看av片| 最近新韩国日本免费观看| 久久久久女教师免费一区| baoyu116.永久免费视频| 亚洲一区免费观看| 本免费AV无码专区一区| 久久青青草原国产精品免费| 免费无遮挡无码永久视频| 99视频全部免费精品全部四虎 | 亚洲国产福利精品一区二区| 精品久久久久久亚洲精品| 亚洲欧洲免费无码| 亚洲精品一区二区三区四区乱码| 亚洲av无码片在线观看| 亚洲AV无码专区亚洲AV桃| 一级一看免费完整版毛片| 国产成人精品无码免费看 | 羞羞视频在线观看免费| 成全高清在线观看免费| 国产99久久久国产精免费| 深夜a级毛片免费视频| 中文字幕一区二区免费| 日本片免费观看一区二区| 免费黄色一级毛片| 大学生一级特黄的免费大片视频| 亚洲Aⅴ无码专区在线观看q| 日本免费大黄在线观看|