今天在幫朋友寫(xiě)一個(gè)簡(jiǎn)單的產(chǎn)品發(fā)布網(wǎng)站,由于使用的空間是靜態(tài)的,沒(méi)有辦法只能在javascript上下功夫了。首先想到的便是RIA,上網(wǎng)google了一下,發(fā)現(xiàn)這樣的東西還真不少,可謂是十八般武藝各顯靈通。看了看文明的bindows,感覺(jué)真的非常的好。可是選擇它對(duì)于我要做的東西,可以說(shuō)是過(guò)于復(fù)雜了。(http://www.bindows.net 有興趣的朋友可以去看看)。搜索了半天最后還是決定,采用javascript讀取服務(wù)器端xml文件的辦法來(lái)實(shí)現(xiàn)。嘗試了一下感覺(jué)還不錯(cuò),確定就是對(duì)使用的瀏覽器有依賴(lài)。先寫(xiě)了一個(gè)商品的xml文件:
使用javascript來(lái)讀入xml實(shí)在是相當(dāng)?shù)暮?jiǎn)單,只需要兩句話就可以搞定:
指定要載入的xml文件名就可以完成對(duì)xml的讀入。
得到xml對(duì)象后就可以適用對(duì)象提供的相應(yīng)方法和屬性來(lái)獲取xml中定義的數(shù)據(jù)信息。xmlObj.hasChildNodes來(lái)判斷是否含有子項(xiàng);xmlObj.childNodes.lenght 得到包含的子項(xiàng)的數(shù)量子項(xiàng)可以用數(shù)字來(lái)作為索引,以product.xml為例。如果我們要獲取第二條商品時(shí),可以用xmlObj.childNodes(1)來(lái)獲得,xmlObj.childNodes(1).childNodes(0)得到的是descriptionxmlObj.childNodes(1).childNodes(0).text 得到description的值xmlObj.childNodes(1).getAttribute("name") 得到第二條商品的名字
中午收到老姐來(lái)的電話,電話里她是一遍一遍又一遍的在我耳邊嘮叨,說(shuō),“不管你怎么忙,有多少東西要寫(xiě),一定要按時(shí)睡覺(jué)”。還列出了一堆要按時(shí)睡覺(jué)的理由。其實(shí)誰(shuí)不知道應(yīng)該要按時(shí)睡覺(jué),可是作為寫(xiě)程序的程序員來(lái)說(shuō),要真想做到這一點(diǎn)實(shí)在是難,難,難呀!要按時(shí)睡覺(jué)的理由: 從人的排毒期入手:晚間11:00--1:00,肝的排毒期(必須在睡覺(jué)中進(jìn)行)從人的睡眠最佳時(shí)段入手:1:00--4:00,人的睡眠是質(zhì)量最高的不知道各位有誰(shuí)是有正常的生活習(xí)慣的,能不能說(shuō)一說(shuō)你是怎么做到的。。。
做項(xiàng)目,無(wú)論是遺留產(chǎn)品的再生產(chǎn),還是對(duì)遺留產(chǎn)品的再利用,都不可避免的會(huì)出現(xiàn)一大堆的異構(gòu)現(xiàn)象。解決異構(gòu)通信問(wèn)題是這類(lèi)項(xiàng)目的主要問(wèn)題。以前看見(jiàn)這種情況第一個(gè)解決方案就是Socket通信。說(shuō)實(shí)在的自己實(shí)現(xiàn)Socket通信,定制通信協(xié)議,或者是實(shí)現(xiàn)已有的通信協(xié)議都是很頭痛的事情。本人有不堪回首的歷史經(jīng)歷。 最近同樣在項(xiàng)目中需要去解決一個(gè)異構(gòu)問(wèn)題,由于時(shí)間的緊迫,以及先天的運(yùn)行環(huán)境(兩個(gè)部分是運(yùn)行在同一臺(tái)機(jī)器上的)。考慮到了使用JNI,結(jié)果表明JNI是完全可以勝任目前的角色的。以前沒(méi)有了解過(guò)JNI,總是以為它這不好那不好,用了用,表現(xiàn)還不錯(cuò),而且實(shí)現(xiàn)起來(lái)非常之簡(jiǎn)單。 整個(gè)實(shí)現(xiàn)過(guò)程可以分為五步來(lái)完成:1)寫(xiě)一個(gè)聲明了native的Java文件: