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

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

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

    2006年4月19日

    盡管科學家一個接一個的科研成果讓我們對記憶有了越來越多的了解,但直到今天,科學家所發現的所謂大腦的秘密也只是冰山一角,在很大程度上,大腦和記憶仍是神秘的。研究人員認為,記憶是一個過程,并且當你記憶的時候,實際上就是你把保存在大腦中零零碎碎的信息進行重建。但讓人不解的是,究竟是什么東西引發大腦開始這個重建過程?這個謎團繼續等待科學家們去尋找答案,但有20個事實是已經科學家證實了的。?
    .大腦喜歡色彩。平時使用高質量的有色筆或使用有色紙,顏色能幫助記憶。

    2.大腦集中精力最多只有25分鐘。這是對成人而言,所以學習20到30分鐘后就應該休息10分鐘。你可以利用這段時間做點家務,10分鐘后再回來繼續學習,效果會更好。

    3.大腦需要休息,才能學得快,記得牢。如果你感到很累,先拿出20分鐘小睡一會兒再繼續學習。

    4.大腦像發動機,它需要燃料。大腦是一臺珍貴而復雜的機器,所以你必須給它補充"優質燃料"。垃圾食品、劣質食品、所有化學制品和防腐劑,不僅損害身體,還削弱智力。英國一項新研究顯示,飲食結構影響你的智商。

    5.大腦是一個電氣化學活動的海洋。電和化學物質在水里能更好地流動,如果你脫水,就無法集中精力。專家建議,日常生活要多喝水,保持身體必需的水分,而且一天最好不要飲用相同的飲料,可以交換著喝礦泉水、果汁和咖啡等。另外,研究資料顯示,經常性頭痛和脫水有關。

    6.大腦喜歡問題。當你在學習或讀書過程中提出問題的時候,大腦會自動搜索答案,從而提高你的學習效率。從這個角度說,一個好的問題勝過一個答案。

    7.大腦和身體有它們各自的節奏周期。一天中大腦思維最敏捷的時間有幾段,如果你能在大腦功能最活躍的時候學習,就能節省很多時間,會取得很好的學習效果。

    8.大腦和身體經常交流。如果身體很懶散,大腦就會認為你正在做的事情一點都不重要,大腦也就不會重視你所做的事情。所以,在學習的時候,你應該端坐、身體稍微前傾,讓大腦保持警覺。

    9.氣味影響大腦。香料對保持頭腦清醒有一定功效。薄荷、檸檬和桂皮都值得一試。

    10.大腦需要氧氣。經常到戶外走走,運動運動身體。

    11.大腦需要空間。盡量在一個寬敞的地方學習,這對你的大腦有好處。

    12.大腦喜歡整潔的空間。最近的研究顯示,在一個整潔、有條有理的家庭長大的孩子在學業上的表現更好。為什么,因為接受了安排外部環境的訓練后,大腦學會了組織內部知道的技巧,你的記憶力會更好。

    13.壓力影響記憶。當你受到壓力時,體內就會產生皮質醇,它會殺死海馬狀突起里的腦細胞,而這種大腦側面腦室壁上的隆起物在處理長期和短期記憶上起主要作用。因此,壓力影響記憶。最好的方法就是鍛煉。

    14.大腦并不知道你不能做哪些事情,所以需要你告訴它。用自言自語的方式對大腦說話,但是不要提供消極信息,用積極的話代替它。

    15.大腦如同肌肉。無論在哪個年齡段,大腦都是可以訓練和加強的。毫無疑問,不要尋找任何借口。不要整天呆在家里無所事事,這只能使大腦老化的速度加快。專業運動員每天都要訓練,才能有突出表現。所以你一定要"沒事找事",不要讓大腦老閑著。

    16.大腦需要重復。每一次回顧記憶間隔的時間越短,記憶的效果越好,因為多次看同一事物能加深印象,但只看一次卻往往容易忘記。

    17.大腦的理解速度比你的閱讀速度快。用鉛筆或手指輔助閱讀嗎?不,用眼睛。使用這種方法的時候,需要你的眼睛更快地移動。

    18.大腦需要運動。站著辦公效率更高。

    19.大腦會歸類,也會聯系。如果你正在學習某種東西,不妨問問自己:它讓我想起了什么?這樣做能幫助你記憶,因為大腦能把你以前知道的知識和新知識聯系起來。

    20.大腦喜歡開玩笑。開心和學習效率成正比,心情越好,學到的知識就越多,所以,讓自己快樂起來吧!
    ?

    posted @ 2006-05-08 15:41 IT鼠 閱讀(237) | 評論 (0)編輯 收藏
     
    來自:賽迪博客 itzealot??

    我始終認為,對一個初學者來說,IT界的技術風潮是不可以追趕的,而且也沒有能力去追趕。我時常看?見自己的DDMM們把課本扔了,去賣些價格不菲的諸如C#,?VB.Net?這樣的大部頭,這讓我感到非常痛心。?
    ???
    而許多搞不清指針是咋回事的BBS站友眉飛色舞的討論C#里面可以不用指針等等則讓我覺得好笑。C++就象當年的ASP一樣,忽如一夜春風來,千樹萬樹梨花開,結果許多學校的信息學院成了“Web?學院
    ?
    ??? 96,97
    級的不少大學生都去做Web了。當然我沒有任何歧視某一行業的意識。我只是覺得如?果他們把追趕這些時髦技術的時間多花一點在基礎的課程上應該是可以走得更遠的。
    ?

    ???
    幾個誤區
    ?
    ???
    初學者對C++風潮的追趕其實也只是學習過程中經常遇到的幾個誤區之一。我將用一些實際的例子來說明這?些現象,你可以按部就班的看看自己是不是屬于其中的一種或者幾種:
    ?
    ???
    認為計算機技術等于編程技術
    :?
    ???
    有些人即使沒有這個想法,在潛意識中也有這樣的沖動。讓我奇怪的是,許多信息學院的學生也有這樣的念頭。認為計算機專業就是編程專業,與編程無關的,或者不太相關的課程他統統都不管,極端的學生只要書上沒帶編程兩個字他就不看。
    ?
    ???
    其實編程只是計算機技術應用過程中一種復雜性最低的勞動,這就是為什么IT業最底層的人是程序員(?CODER)。計算機技術包括了多媒體,計算機網絡,人工智能,模式識別,管理信息系統等等這些方面。
    ?
    ???
    編程工作只是在這些具體技術在理論研究或者工程實踐的過程中表達算法的過程。編程的人不一定對計算機技術的了解就一定很高。而一個有趣的現象是,不少大師級的計算機技術研究者是不懂編程的。網上的炒作和現實中良好的工作待遇把編程這種勞動神秘化了。其實每一個程序員心里都明白,自己這些東西,學的時候并不比其它專業難,所以自然也不會高檔到哪里去。?


    ???
    咬文嚼字的孔乙己作風:?
    ???
    我見過一本女生的《計算機網絡原理》教材,這個女生象小學生一樣在書上劃滿了橫杠杠,筆記做得滿滿的,打印出來一定比教材還厚。我不明白的是,象計算機網絡原理這樣的課程有必要做筆記?我們的應試教育的確害了不少學生,在上《原理》這一類課程的時候許多學生象學《馬列原理》一樣逐字背誦記憶。
    ?
    ???
    這乃是我見過的最愚蠢的行為。所謂《原理》,即是需要掌握它為什么這樣做,學習why,而不是how(怎樣做)。極端認真的學生背下以太網的網線最大長度,數據幀的長度,每個字段的意義,IP報頭的格式等等,但是忘了路由的原則,忘了TCP/IP協議設計的宗旨。總之許多人花了大量的時間把書背得滾瓜爛熟卻等于什么也沒學。
    ?
    ???
    在學習編程的時候這些學生也是這樣,他們確切的記得C++語法的各個細節。看完了C++教程后看《Thinking?in?C++》(確實是好書),《Inside?C++》,《C++?reference》,this?C++,thatC++……,然后是網上各種各樣的關于C++語法的奇聞逸事,然后發現自己又忘了C++的一些語法,最后回頭繼續惡補。有個師弟就跟我說:“C++?太難了,學了這里忘了那里,學了繼承忘了模板。我的回答道:你不去學就容易了。我并沒有教壞他,只是告訴他,死摳C++的語法就和孔已己炫耀茴香豆的茴字有幾種寫法一樣毫無意義。你根本不需要對的C++語法太關心,動手編程就是了,有不記得的地方一查MSDN就立馬搞定。我有個結論就是,實際的開發過程中對程序語法的了解是最微不足道的知識。這是為什么我在為同學用Basic(我以前從沒有學過它)寫一個小程序的時候,只花了半個小時看了看語法,然后再用半個小時完成了程序,而一個小時后我又完全忘記了Basic?的所有關鍵字。
    ?

    ???
    不顧基礎,盲目追趕時髦技術:
    ?
    ???
    終于點到題目上來了。大多數的人都希望自己的東西能夠馬上跑起來,變成錢。這種想法對一個已經進入職業領域的程序員或者項目經理來說是合理的,而且IT技術進步是如此的快,不跟進就是失業。但是對于初學者來說(尤其是時間充裕的大中專在校生),這種想法是另人費解的。一個并未進入到行業競爭中來的初學者最大的資本便是他有足夠的時間沉下心來學習基礎性的東西,學習why?而不是how。時髦的技術往往容易掌握,而且越來越容易掌握,這是商業利益的驅使,為了最大化的降低軟件開發的成本。但在IT領域內的現實就是這樣,越容易掌握的東西,學習的人越多,而且淘汰得越快。每一次新的技術出來,都有許多初學者跟進,這些初學者由于缺乏必要的基礎而使得自己在跟進的過程中花費大量的時間,而等他學會了,這種技術也快淘汰了。基礎的課程,比方數據結構,操作系統原理等等雖然不能讓你立馬就實現一個linux(這是許多人嘲笑理論課程無用的原因),但它們能夠顯著的減少你在學習新技術時學習曲線的坡度。而且對于許多關鍵的技術(比方Win32?SDK?程序的設計,DDK的編程)來說甚至是不可或缺的。
    ?
    ???
    一個活生生的例子是我和我的一個同學,在大一時我還找不到開機按紐,他已經會寫些簡單的匯編程序了。我把大二的所有時間花在了匯編,計算機體系結構,數據結構,操作系統原理等等這些課程的學習上,而他則開始學習HTMLVB,并追趕ASP的潮流。大三的時候我開始學習Windows?操作系統原理,學習SDK編程,時間是漫長的,這時我才能夠用VC開發出象模象樣的應用程序。我曾一度因為同學的程序已經能夠運行而自己還在學習如何創建對話框而懊惱不已,但臨到畢業才發現自己的選擇是何等的正確。和我談判的公司開出的薪水是他的兩倍還多。下面有一個不很恰當的比方:假設學習VB編程需要4個月,學習基礎課程和VC的程序設計需要1年。那么如果你先學VB,再來學習后者,時間不會減少,還是1年,而反過來,如果先學習后者,再來學VB,也許你只需要1個星期就能學得非常熟練。
    ?

    ???
    幾個重要的基礎課程
    ?
    ???
    如果你是學生,或者如果你有充足的時間。我建議你仔細的掌握下面的知識。我的建議是針對那些希望在IT技術上有所成就的初學者。同時我還列出了一些書目,這些書應該都還可以在書店買到。說實在的,我在讀其他人的文章時最大的心愿就是希望作者列出一個書單。
    ?
    ???
    大學英語-不要覺得好笑。我極力推薦這門課程是因為沒有專業文檔的閱讀能力是不可想象的。中文的翻譯往往在猴年馬月才會出來,而現在的許多出版社干脆就直接把E文印刷上去。學習的方法是強迫自己看原版的教材,開始會看不懂,用多了自然熟練。吃得苦下得狠心絕對是任何行業都需要的品質。
    ?
    ???
    計算機體系結構和匯編語言-關于體系結構的書遍地都是,而且也大同小異,倒是匯編有一本非常好的書。《80x86匯編語言程序設計教程》(清華大學出版社,黑色封面,楊季文著)。你需要著重學習386后保護模式的程序設計。否則你在學習現代操作系統底層的一些東西的時候會覺得是在看天書。
    ?
    ???
    計算機操作系統原理-我們的開發總是在特定的操作系統上進行,如果不是,只有一種可能:你在自己實現一個操作系統。無論如何,操作系統原理是必讀的。這就象我們為一個芯片制作外圍設備時,芯片基本的工作時序是必需了解的。這一類書也很多,我沒有發現哪一本書非常出眾。只是覺得在看完了這些書后如果有空就應該看看《Inside?Windows?2000(微軟出版社,我看的是E文版的,中文的書名想必是Windows?2000?技術內幕之類吧)。關于學習它的必要性,ZDNET上的另一篇文章已經有過論述。
    ?
    ???
    數據結構和算法-這門課程能夠決定一個人程序設計水平的高低,是一門核心課程。我首選的是清華版的(朱戰立,劉天時)。很多人喜歡買C++版的,但我覺得沒有必要。C++的語法讓算法實現過程變得復雜多了,而且許多老師喜歡用模塊這一東西讓算法變得更復雜。倒是在學完了C版的書以后再來瀏覽一下C++的版的書是最好的。
    ?
    ???
    軟件工程-這門課程是越到后來就越發現它的重要,雖然剛開始看時就象看馬哲一樣不知所云。我的建議是看《實用軟件工程》(黃色,清華)。不要花太多的時間去記條條框框,看不懂就跳過去。在每次自己完成了一個軟件設計任務(不管是練習還是工作)以后再來回顧回顧,每次都會有收獲。
    ?
    ??? Windows?
    程序設計-《北京大學出版社,Petzold著》我建議任何企圖設計Windows?程序的人在學習VC以前仔細的學完它。而且前面的那本《Inside?Windows?2000》也最好放到這本書的后面讀。
    ?
    ???
    在這本書中,沒有C++,沒有GUI,沒有控件。有的就是如何用原始的C語言來完成Windows?程序設計。在?學完了它以后,你才會發現VC其實是很容易學的。千萬不要在沒有看完這本書以前提前學習VC,你最好碰都不要碰。我知道的許多名校甚至都已經用它作為教材進行授課。可見其重要。
    ?
    ???
    上面的幾門課程我認為是必學的重要課程(如果你想做Windows?程序員)。
    ?
    ???
    對于其它的課程有這樣簡單的選擇方法:如果你是計算機系的,請學好你所有的專業基礎課。如果不是,請參照計算機系的課程表。如果你發現自己看一本書時無法看下去了,請翻到書的最后,看看它的參考文獻,找到它們并學習它們,再回頭看這本書。如果一本書的書名中帶有原理兩個字,你一定不要去記憶它其中的細節,你應該以一天至少50頁的速度掌握其要領。盡可能多的在計算機上實踐一種理論或者算法。
    ?
    ???
    你還可以在CSDN上閱讀到許多書評。這些書評能夠幫助你決定讀什么樣的書。
    ?

    ????
    日三省乎己
    ?
    ???
    每天讀的書太多,容易讓人迷失方向。一定要在每天晚上想想自己學了些什么,還有些什么相關的東西需要掌握,自己對什么最感興趣,在一本書上花的時間太長還是不夠等等。同時也應該多想想未來最有可能出現的應用,這樣能夠讓你不是追趕技術潮流而是引領技術潮流。同時,努力使用現在已經掌握的技術和理論去制作具有一定新意的東西。堅持這樣做能夠讓你真正成為一個軟件研發者而不僅僅是一個CODER?


    ???
    把最多的時間花在學習上?
    ???
    這是對初學者最后的忠告。把每個星期玩SC或者CS的時間壓縮到最少,不玩它們是最好的。同時,如果你的ASP技術已經能夠來錢,甚至有公司請你兼職的話,這就證明你的天份能夠保證你在努力的學習之后取得更好的收益,你應該去做更復雜的東西。眼光放長遠一些,這無論是對誰都是適用的。
    ?
    ???
    相信你已經能夠決定是否學習C#或者什么時候去學它了。

    posted @ 2006-04-28 09:41 IT鼠 閱讀(184) | 評論 (0)編輯 收藏
     

    ?

    import java.io.*;
    import java.util.List;

    import javax.xml.transform.*;
    import javax.xml.transform.stream.StreamResult;
    import javax.xml.transform.stream.StreamSource;
    import org.jdom.*;
    import org.jdom.input.*;
    import org.jdom.output.*;

    /**
    ?* 這個類提供一些 JDom 對象常用的方法。
    ?*
    ?*/
    public class JDomUtil {

    ?/**
    ? * 根據指定路徑的XML文件建立JDom對象
    ? *
    ? * @param filePath
    ? *??????????? XML文件的路徑
    ? * @return 返回建立的JDom對象,建立不成功返回null 。
    ? */
    ?public static Document buildFromFile(String filePath) {
    ??try {
    ???SAXBuilder builder = new SAXBuilder();
    ???Document anotherDocument = builder.build(new File(filePath));
    ???return anotherDocument;
    ??} catch (JDOMException e) {
    ???e.printStackTrace();
    ??} catch (NullPointerException e) {
    ???e.printStackTrace();
    ??} catch (IOException e) {
    ???// TODO 自動生成 catch 塊
    ???e.printStackTrace();
    ??}
    ??return null;
    ?}

    ?/**
    ? * 根據XML 字符串 建立JDom對象
    ? *
    ? * @param xmlString
    ? *??????????? XML格式的字符串
    ? * @return 返回建立的JDom對象,建立不成功返回null 。
    ? */
    ?public static Document buildFromXMLString(String xmlString) {
    ??try {
    ???SAXBuilder builder = new SAXBuilder();
    ???Document anotherDocument = builder
    ?????.build(new StringReader(xmlString));
    ???return anotherDocument;
    ??} catch (JDOMException e) {
    ???e.printStackTrace();
    ??} catch (NullPointerException e) {
    ???e.printStackTrace();
    ??} catch (IOException e) {
    ???// TODO 自動生成 catch 塊
    ???e.printStackTrace();
    ??}
    ??return null;
    ?}

    ?/**
    ? * 根據Dom對象建立JDom對象
    ? *
    ? * @param Dom
    ? *??????????? org.w3c.dom.Document對象
    ? * @return 返回建立的JDom對象,建立不成功返回null 。
    ? */
    ?public static Document buildFromDom(org.w3c.dom.Document Dom)
    ???throws JDOMException, IOException {
    ??org.jdom.input.DOMBuilder builder = new org.jdom.input.DOMBuilder();
    ??Document jdomDoc = builder.build(Dom);
    ??return jdomDoc;
    ?}

    ?/**
    ? * 這個方法使用XMLOutputer將一個JDom對象輸出到標準輸出設備,使用 GBK 編碼
    ? *
    ? * @param myDocument
    ? *??????????? 將要被輸出的JDom對象
    ? */
    ?public static void outputToStdout(Document myDocument) {
    ??outputToStdout(myDocument, "GBK");
    ?}

    ?/**
    ? * 這個方法使用XMLOutputer將一個JDom對象輸出到標準輸出設備
    ? *
    ? * @param myDocument
    ? *??????????? 將要被輸出的JDom對象
    ? * @param encoding
    ? *??????????? 輸出使用的編碼
    ? */
    ?public static void outputToStdout(Document myDocument, String encoding) {
    ??try {
    /*???XMLOutputter outputter = new XMLOutputter();
    ???Format fm = Format.getRawFormat();
    ???fm.setEncoding(encoding);
    ???outputter.setFormat(fm);*/
    ???XMLOutputter outputter = new XMLOutputter("",true,encoding);
    ???outputter.output(myDocument, System.out);
    ??} catch (java.io.IOException e) {
    ???e.printStackTrace();
    ??}
    ?}

    ?/**
    ? * 這個方法將JDom對象轉換字符串.
    ? *
    ? * @param document
    ? *??????????? 將要被轉換的JDom對象
    ? */
    ?public static String outputToString(Document document) {
    ??return outputToString(document, "GBK");
    ?}

    ?/**
    ? * 這個方法將JDom對象轉換字符串.
    ? *
    ? * @param document
    ? *??????????? 將要被轉換的JDom對象
    ? * @param encoding
    ? *??????????? 輸出字符串使用的編碼
    ? */
    ?public static String outputToString(Document document, String encoding) {
    ??ByteArrayOutputStream byteRep = new ByteArrayOutputStream();
    ??/*???XMLOutputter outputter = new XMLOutputter();
    ??Format fm = Format.getRawFormat();
    ??fm.setEncoding(encoding);
    ??outputter.setFormat(fm);*/
    ??XMLOutputter outputter = new XMLOutputter("",true,encoding);
    ??try {
    ???outputter.output(document, byteRep);
    ??} catch (Exception e) {

    ??}

    ??return byteRep.toString();
    ?}

    ?/**
    ? * 這個方法將List對象轉換字符串.
    ? *
    ? * @param document
    ? *??????????? 將要被轉換的JDom對象
    ? */
    ?public static String outputToString(List list) {
    ??return outputToString(list, "GBK");
    ?}
    ?/**
    ? * 這個方法將List對象轉換字符串.
    ? *
    ? * @param document
    ? *??????????? 將要被轉換的JDom對象
    ? * @param encoding
    ? *??????????? 輸出字符串使用的編碼
    ? */
    ?public static String outputToString(List list, String encoding) {
    ??ByteArrayOutputStream byteRep = new ByteArrayOutputStream();
    ??/*???XMLOutputter outputter = new XMLOutputter();
    ??Format fm = Format.getRawFormat();
    ??fm.setEncoding(encoding);
    ??outputter.setFormat(fm);*/
    ??XMLOutputter outputter = new XMLOutputter("",true,encoding);
    ??try {
    ???outputter.output(list, byteRep);
    ??} catch (Exception e) {

    ??}

    ??return byteRep.toString();
    ?}
    ?public static org.w3c.dom.Document outputToDom(org.jdom.Document jdomDoc)
    ???throws JDOMException {
    ??org.jdom.output.DOMOutputter outputter = new org.jdom.output.DOMOutputter();
    ??return outputter.output(jdomDoc);
    ?}

    ?/**
    ? * 這個方法使用XMLOutputter將JDom對象輸出到文件
    ? *
    ? * @param myDocument
    ? *??????????? 將要輸出的JDom對象
    ? * @param filePath
    ? *??????????? 將要輸出到的磁盤路徑
    ? */
    ?public static void outputToFile(Document myDocument, String filePath) {
    ??outputToFile(myDocument, filePath, "GBK");
    ?}

    ?/**
    ? * 這個方法使用XMLOutputter將JDom對象輸出到文件
    ? *
    ? * @param myDocument
    ? *??????????? 將要輸出的JDom對象
    ? * @param filePath
    ? *??????????? 將要輸出到的磁盤路徑
    ? * @param encoding
    ? *??????????? 編碼方式
    ? */
    ?public static void outputToFile(Document myDocument, String filePath,
    ???String encoding) {
    ??//setup this like outputDocument
    ??try {
    ???//XMLOutputter outputter = new XMLOutputter(" ", true,encoding);
    ???/*???XMLOutputter outputter = new XMLOutputter();
    ???Format fm = Format.getRawFormat();
    ???fm.setEncoding(encoding);
    ???outputter.setFormat(fm);*/
    ???XMLOutputter outputter = new XMLOutputter("",true,encoding);
    ???//output to a file
    ???FileWriter writer = new FileWriter(filePath);
    ???outputter.output(myDocument, writer);
    ???writer.close();

    ??} catch (java.io.IOException e) {
    ???e.printStackTrace();
    ??}
    ?}

    ?/**
    ? * 這個方法將JDom對象通過樣式單轉換.
    ? *
    ? * @param myDocument
    ? *??????????? 將要被轉換的JDom對象
    ? * @param xslFilePath
    ? *??????????? XSL文件的磁盤路徑
    ? */
    ?public static void executeXSL(Document myDocument, String xslFilePath,
    ???StreamResult xmlResult) {
    ??try {
    ???TransformerFactory tFactory = TransformerFactory.newInstance();
    ???// Make the input sources for the XML and XSLT documents
    ???org.jdom.output.DOMOutputter outputter = new org.jdom.output.DOMOutputter();
    ???org.w3c.dom.Document domDocument = outputter.output(myDocument);
    ???javax.xml.transform.Source xmlSource = new javax.xml.transform.dom.DOMSource(
    ?????domDocument);
    ???StreamSource xsltSource = new StreamSource(new FileInputStream(
    ?????xslFilePath));
    ???//Get a XSLT transformer
    ???Transformer transformer = tFactory.newTransformer(xsltSource);
    ???//do the transform
    ???transformer.transform(xmlSource, xmlResult);
    ??} catch (FileNotFoundException e) {
    ???e.printStackTrace();
    ??} catch (TransformerConfigurationException e) {
    ???e.printStackTrace();
    ??} catch (TransformerException e) {
    ???e.printStackTrace();
    ??} catch (org.jdom.JDOMException e) {
    ???e.printStackTrace();
    ??}
    ?}

    ?//Main 函數,局部測試用。
    ?public static void main(String argv[]) {
    //??Document dom = JDomUtil.buildFromFile("f:/web.xml");
    //??List list=dom.getRootElement().getChildren("servlet");
    //??String vs_dom = JDomUtil.outputToString(list,"gb2312");
    //??System.out.println(vs_dom);
    ??String xmlString = "<record><row f1=\"111\" f2=\"111\"/><row f1=\"222\" f2=\"222\"/></record>";
    ??Document dom = JDomUtil.buildFromXMLString(xmlString);
    ??List list=dom.getRootElement().getChildren("row");
    ??int num = list.size();
    ??for(int i=0;i<num;i++){
    ???Element element = (Element)list.get(i);
    ???System.out.println(element.getAttributeValue("f1"));
    ???System.out.println(element.getAttributeValue("f2"));
    ??}
    ?}
    }

    ?

    posted @ 2006-04-28 09:15 IT鼠 閱讀(896) | 評論 (0)編輯 收藏
     

    ?

    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;

    /**
    ?* @author dengdahong214
    ?*
    ?* TODO 要更改此生成的類型注釋的模板,請轉至 窗口 - 首選項 - Java - 代碼樣式 - 代碼模板
    ?*/
    public class DateUtil {
    ??? public static final int MILLISECONDS_PER_SECOND = 1000;
    ??? public static final int MILLISECONDS_PER_DAY = 86400000;
    ??? public static final int MILLISECONDS_PER_HOUR = 3600000;
    ??? public static final int MILLISECONDS_PER_MINUTE = 60000;

    ??? /*
    ???? * 日期按指定格式轉化成字符串
    ???? */
    ??? public static String dateToStr(String aMask,Date date){
    ??????? SimpleDateFormat df = new SimpleDateFormat(aMask);
    ??????? String dateAsString = df.format(date);
    ??????? return dateAsString;
    ??? }
    ??? public static String getCurrentTime(){
    ??????? return getToday("HH:mm:ss");
    ??? }
    ??? /*
    ???? * 按指定格式返回當天日期的字符串形式
    ???? */
    ??? public static String getToday(String aMask){
    ??????? Date today = new Date();
    ??????? String todayAsString = dateToStr(aMask,today);
    ??????? return todayAsString;
    ??? }
    ??? /*
    ???? * 按默認格式返回當天日期的字符串形式
    ???? */
    ??? public static String getToday(){
    ??????? return getToday("yyyy-MM-dd");
    ??? }
    ??? /*
    ???? * 把字符串按指定格式轉化成Date
    ???? */
    ??? public static Date strToDate(String aMask,String strDate) {
    ??????? SimpleDateFormat format = new SimpleDateFormat(aMask);
    ??????? Date date = null;
    ??????? try {
    ??????????? date = format.parse(strDate);
    ??????? } catch (ParseException e) {
    ??????????? e.printStackTrace();
    ??????? }
    ??????? return date;
    ??? }
    ??? /*
    ???? * 把字符串按默認格式轉化成Date
    ???? */
    ??? public static Date strToDate(String strDate) {
    ??????? return strToDate("yyyy-MM-dd",strDate);
    ??? }
    ??? /*
    ???? * 日期相減得到的毫秒數
    ???? */
    ??? public static long sub(String aMask,String strBeginDate, String strEndDate) {
    ??????? long dateRange=0;
    ??????? int num = 0;
    ??????? Date beginDate = strToDate(aMask,strBeginDate);
    ??????? Date endDate = strToDate(aMask,strEndDate);
    ??????? dateRange = endDate.getTime() - beginDate.getTime();
    ??????? return dateRange;
    ??? }
    ??? /*
    ???? * 日期相減得到的毫秒數
    ???? */
    ??? public static long sub(String strBeginDate, String strEndDate) {
    ??????? long dateRange=0;
    ??????? int num = 0;
    ??????? Date beginDate = strToDate(strBeginDate);
    ??????? Date endDate = strToDate(strEndDate);
    ??????? dateRange = endDate.getTime() - beginDate.getTime();
    ??????? return dateRange;
    ??? }
    ??? /*
    ???? * 日期相減得到的天數
    ???? */
    ??? public static String subToDay(String strBeginDate, String strEndDate){
    ??????? String dayNum = "";
    ??????? long dateRange = sub(strBeginDate,strEndDate);
    ??????? dayNum = ""+(dateRange/MILLISECONDS_PER_DAY);
    ??????? return dayNum;
    ??? }
    ??? /*
    ???? * 日期相減得到的秒數
    ???? */
    ??? public static String subToSecond(String aMask,String strBeginDate, String strEndDate){
    ??????? String secNum = "";
    ??????? long dateRange = sub(aMask,strBeginDate,strEndDate);
    ??????? secNum = ""+(dateRange/MILLISECONDS_PER_SECOND);
    ??????? return secNum;
    ??? }
    ??? public static String subToSecond(String strBeginDate, String strEndDate){
    ??????? String secNum = "";
    ??????? long dateRange = sub("yyyy-MM-dd HH:mm:ss",strBeginDate,strEndDate);
    ??????? secNum = ""+(dateRange/MILLISECONDS_PER_SECOND);
    ??????? return secNum;
    ??? }
    ??? public static void main(String[] args) {
    ??????? System.out.println("按默認格式返回今天日期:"+getToday());
    ??????? System.out.println("按指定格式返回今天日期:"+getToday("yyyy-MM-dd HH:mm:ss"));
    ??????? System.out.println("日期相差天數:"+subToDay("2006-08-02 23:02:01", "2006-08-03 01:02:01"));
    ??????? System.out.println("日期相差秒數:"+subToSecond("2006-08-02 23:02:01", "2006-08-03 01:02:01"));
    ??????? System.out.println("當前時間:"+getCurrentTime());
    ??? }
    }

    posted @ 2006-04-28 09:14 IT鼠 閱讀(280) | 評論 (0)編輯 收藏
     

    http://www.gotapi.com?各種API說明,包括HTML,JAVASCRIPT,CSS,JAVA等
    http://www.w3schools.com/?各種web技術的基礎教程,有很多在線可運行的示例,很適合初學者.不過是英文滴

    posted @ 2006-04-27 21:29 IT鼠 閱讀(190) | 評論 (0)編輯 收藏
     

    在javascript中使用&&、||、!來實現邏輯運算,其基本用法相信大家已經熟知,本文將深入介紹其工作機制,相信對大家更加靈活的使用javascript會用幫助。

    每個邏輯表達式都是有返回值的,但這個值并不一定是布爾變量,下面分別介紹:
    (1)與操作符(&&)
    與操作符的執行過程如下:JavaScript依次獲取每一個操作數,將它們轉換為布爾變量,如果是false,則直接返回這個操作數的值(注意,返回的是轉換前的原值,不一定是布爾類型),中斷后面操作數的處理;否則繼續處理下一個操作數。如果直到最后一個操作數仍然對應布爾變量true,則返回最后這個操作數的值,下面的代碼演示了其執行原理:

    var?a="1"?&&?true?&&?0?&&?false?&&?"abc";
    alert(a);??//可見a的值是0
    var?b="abc"?&&?true?&&?"123";
    alert(b);??//可見b的值是"123";

    (2)或操作符(||)
    和與操作符類似,或操作符的執行過程如下:JavaScript依次獲取每一個操作數,將它們轉換為布爾變量,如果是true,則直接返回這個操作數的值,中斷后面操作數的處理;否則繼續下一個操作數。如果知道最后一個操作數仍然對應布爾變量false,則返回這個操作數的值。下面的代碼演示了其執行原理:

    var?a="abc"?||?"123";
    alert(a);??//可見a的值是"abc"
    var?b=false?||?""?||?0;
    alert(b);??//可見a的值是0

    或操作符的這一性質在開發中經常會用到。
    (3)非操作符(!)
    和前兩種操作符不同,非操作符始終返回布爾類型的變量,例如:

    var?a=!?"abc";
    alert(a);??//顯示a的值為false
    posted @ 2006-04-27 21:25 IT鼠 閱讀(257) | 評論 (0)編輯 收藏
     
    1、一個只能提交一次表單的代碼
    <input type=submit value="提交" name=mybutton onClick="this.disabled=true">
    2、event.srcElement是什么意思??
    引發當前函數的源對象;
    <script>
    ? ?? ? function document.onclick()
    ? ?? ? {
    ? ?? ?? ?? ?? ?? ?? ?? ?alert(event.srcElement.tagName);
    ? ?? ? }
    </script>
    不過此對象只有在IE下可用,替代寫法就為:var srcEl = e.srcelement?e.srcelement:e.target;
    3、按住shift時鼠標點擊超連接瀏覽器不響應
    <SCRIPT LANGUAGE="JScript">
    function cancelLink() {
    if (window.event.srcElement.tagName == "A" && window.event.shiftKey)
    window.event.returnValue = false;
    }
    </SCRIPT>
    <BODY onclick="cancelLink()">
    4、判斷數字是否超出javascript的范圍用isFinite(num)
    5、調用iframe頁面里的js用如下代碼
    <html>
    <body onload="test()">
    ?<iframe id="fName" src="1.1.html">
    ?</iframe>
    <script>
    ?function test(){
    ??fName.test(); //在1.1.html中定義了個javascript方法
    ?}
    </script>
    </body>
    </html>
    posted @ 2006-04-27 21:22 IT鼠 閱讀(207) | 評論 (0)編輯 收藏
     
    1,下雨了,別忘了打傘,濕身是小事,淋病就麻煩大了
    2,丑,但是丑的特別,也就是特別的丑。
    3,天使之所以會飛,是因為她們把自己看得很輕~~~
    4,人生沒有彩排,每天都是現場直播!
    5,春天,我把老公埋在地底下,秋天,我就有好多老公......
    6,起來,不愿坐著的人們
    7,如果只有300W,大家說是買奔馳好還是法拉利好呀.
    回復:最好買300輛二手奧托,再雇300個司機,讓他們跟在你后面開,一會排
    成S形,一會排成B形
    8,我終身奮斗的最低革命綱領:農婦——山泉— —有點兒田。
    9,這個世界,除了豬,誰還在快樂著?
    10,此地嚴禁大小便,違者沒收工具
    posted @ 2006-04-20 00:09 IT鼠 閱讀(251) | 評論 (0)編輯 收藏
     

    ???最近公司一個項目小組開發服務器用jboss,第一次用大家都一頭霧水,經過大家的努力,終于搭起了一個簡單的環境.寫下一些配置筆記拿出來共享.
    ???

    1、? jboss 中配置數據源: ( 一個 *-ds.xml 文件配置一個數據源 )

    A 、從 D:\jboss-4.0.0\docs\examples\jca\ 中拷貝 oracle-ds.xml

    D:\rone3\jboss-4.0.0\server\default\deploy 中,重命名為 XXX-ds.xml ,更改后文件內容如下:(文件名隨便取,只要有"-ds.xml"后綴就可以了!)

    <?xml version="1.0" encoding="UTF-8"?>

    <datasources>

    ? <local-tx-datasource>

    ??? <jndi-name>test/jndi</jndi-name>

    ??? <connection-url>jdbc:oracle:oci:@rone</connection-url>

    ??? <driver-class>oracle.jdbc.driver.Oracle Driver</driver-class>

    ??? <user-name>test</user-name>

    ??? <password>test</password>

    ?<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter

    </exception-sorter-class-name>

    ????? <metadata>

    ???????? <type-mapping>Oracle9i</type-mapping>

    ????? </metadata>

    ? </local-tx-datasource>

    </datasources>

    在應用中配置數據源:把應用部署 D:\jboss-4.0.0\server\default\deploy ,在jboss中應用一般以.war為后綴,我們假設有一個test應用,該應用應該打包成一個test.war包或者文件夾,在test .war\WEB-INF 中新建一個文件 jboss-web.xml 添加如下內容:

    <?xml version='1.0' encoding='UTF-8' ?>

    <!DOCTYPE jboss-web

    ??? PUBLIC "-//JBoss//DTD Web Application 2.3V2//EN"

    ??? "http://www.jboss.org/j2ee/dtd/jboss-web_3_2.dtd">

    <jboss-web>

    <context-root>/</context-root> //可以 test 應用指向根路徑

    <resource-ref>

    ??????? <res-ref-name>test/jndi</res-ref-name>

    ??????? <jndi-name>java:test/jndi</jndi-name>//對應jboss服務器上設置的jndi

    </resource-ref>

    </jboss-web>

    并確保 web.xml 中有如下代碼段:

    ? <resource-ref id="ResourceRef_1">

    ??? <res-ref-name>test/jndi</res-ref-name>//對應jboss-web.xml中的res-ref-name

    ??? <res-type>javax.sql.DataSource</res-type>

    ??? <res-auth>Container</res-auth>

    ? </resource-ref>

    備注:

    a.要把數據庫驅動程序 ojdbc4.jar 放入 default/lib 下.

    b.OCI 驅動注意事項:需要 oralce 客戶端;在 MyEclipse 中啟動 JBOSS ,需要把 C:\oracle\ora92\bin 路徑下的 ocijdbc9.dl l 文件拷貝到 jdk 安裝目錄下的 bin 文件夾下。否則會出現找不到數據源的錯誤!


    2.jboss應用亂碼問題,更改D:\jboss-4.0.0\server\default\deploy\jboss文件web-tomcat50.sar\server.xml:

    ???? <Connector port="8080" address="${jboss.bind.address}"

    ???????? maxThreads="150" minSpareThreads="25" maxSpareThreads="75"

    ???????? enableLookups="false" redirectPort="8443" acceptCount="100"

    ???????? connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"/>

    posted @ 2006-04-19 22:54 IT鼠 閱讀(658) | 評論 (0)編輯 收藏
     
    主站蜘蛛池模板: 日韩在线免费视频| 亚洲成在人天堂一区二区| 久久嫩草影院免费看夜色| 久久精品亚洲中文字幕无码网站| 免费看污成人午夜网站| 免费国产va在线观看| 亚洲精彩视频在线观看| 国产精品免费看香蕉| 91人人区免费区人人| 国产精品亚洲一区二区无码| 国产AV无码专区亚洲AV毛网站| 妞干网免费观看视频| 久久久久久免费一区二区三区| 亚洲精品国产综合久久久久紧 | 久久久久亚洲AV成人网人人网站| 无码日韩精品一区二区免费暖暖 | 极品美女一级毛片免费| 91亚洲一区二区在线观看不卡 | 日本免费无遮挡吸乳视频电影| 成人影片一区免费观看| 老牛精品亚洲成av人片| 久久精品国产亚洲AV嫖农村妇女 | 国产亚洲综合色就色| 日韩a级毛片免费观看| 中文字幕成人免费视频| 精品久久久久久无码免费| 亚洲一卡一卡二新区无人区| 久久精品亚洲一区二区| 中文字幕久久亚洲一区 | 亚洲天堂男人影院| 水蜜桃亚洲一二三四在线| xvideos亚洲永久网址| 四虎成人免费大片在线| 男女超爽刺激视频免费播放| 免费A级毛片无码专区| 一级免费黄色大片| 国产精品亚洲精品日韩电影| 亚洲日本乱码卡2卡3卡新区| 亚洲成人免费网址| 亚洲女人18毛片水真多| 亚洲精品国产成人99久久|