posts - 495,  comments - 11,  trackbacks - 0
           
          見過的沒見過的在線制作圖標的網站太多了.在這里做個匯總.有新的還會繼續添加.有好的也有差的.美與丑請自己甄別.因為每個人的審美觀點不同.

          站點一 http://www.nhacks.com/email/

             支持多種域名的Email圖標的生成。

            ● 只能設置"@"之前的文本,支持的Mail類型的包括GMail、Hotmail、Yahoo、MSN、AOL、ATT、Bigfoot、 RocketMail、QQ、Comcast、Netscape、Blueyonder、SBCGlobal、Earthlink、Lycos、 Sympatico、Rogers等。

            ● 每種Email只能生成系統制定的樣式圖標。

          站點二
            http://sagittarius.dip.jp/~toshi/cgi-bin/designmail/designmail.html
            http://sagittarius.dip.jp/~toshi/cgi-bin/catmark/catmark.html

            兩個地址支持兩種風格任意文本的Email圖標的生成。

            ● 支持整個Email文本,用戶可以自由定制Email文本。

            ● 支持多種參數的設置,包括圖標的風格、顏色、字體、生成圖標文件類型等支持任何文本。

          站點三 http://pic.xabar.net/generator/email.asp

           支持多種域名的Email圖標的生成。

          站點四 http://www.eoool.com/

            支持多種域名的頭像、簽名、題圖、廣告、郵件、聊天、博客、書簽、朋友圈、按鈕等工具圖標的生成。

          站點五 http://phorum.com.tw/Generator.aspx

            支持域名圖標的生成。

          站點六 http://gizmo967.mgs3.org/Gmail/

            支持Gmail圖標的生成。

            
            站點七 http://www.feedforall.com/public/rss-graphic-tool.htm

            支持RSS圖標的生成。

           
            站點八 http://email.playtime.uni.cc/

            支持Gmail、Yahoo、Hotmail、MSN等類型的郵箱圖標生成。


            站點九 http://www.html-kit.com/e/favicon.cgi

            支持收藏夾圖標生成。
          站點十 http://www.lucazappa.com/brilliantMaker/buttonImage.php

            支持各種按鈕類型的圖標生成。

            站點十一 http://www.abi-station.com/tchinese/

            支持各種類型圖片的生成,可以選擇設置的條件非常靈活。

          站點十二 http://www.myelogo.com/

            支持客戶信息顯示、自定義文字及圖片,詳情請參考本站的《介紹一個免費生成動態簽名圖標的站點》。
          站點十三 http://www.kalsey.com/tools/buttonmaker/

            支持按鈕類型的圖標生成。

            站點十四 http://www.danasoft.com/

            支持多種語言,客戶信息顯示(無需注冊)、自定義文字(需注冊登錄才可以設置)。

          站點十五 http://www.youmade.com/font/

            支持大量中文字體簽名圖標生成。

          站點十六 http://www.atomicfonts.com/

            支持大量英文字體簽名圖標生成。

          站點十七 http://www.myfonts.com/category/myfonts/index.html

            又一個支持大量英文字體簽名圖標生成的站點。
          站點十八http://www.igogo8.com/

          ??????? 定制Google個性標志,一秒鐘把Google據為己有

          站點十九 http://www.streetsigngenerator.com/

          ??????? 街道簽名生成器(不過不支持中文)

          站點二十??http://googlealive.com/create.asp

          可以生成google的LOGO樣式圖標,可以生成類似google logo的圖標,你可以輸入數字、字母和部分符號[/@;:+-!?] 或者空格。當然還可以生成你自己LOGO的google搜索引擎。

          站點二十一??http://linux-fans.com/email/live/live.php
          live個性圖標在線制作


          一組匯總:
          favicon.ico在線生成

          http://www.html-kit.com/favicon/

          該站是生成小圖標的網站.完全的免費.在制作之前你需要準備一張jpg或者是gif的圖片,然后上傳上去.就可以生成了.生成兩種格式,一個是靜態的,一個是動態的,應該沒見過有哪個站是用動態的favicon.ico吧.里面還帶有一個文本文檔,說明了怎樣使用favicon.ico.



          按鈕生成網站:


          http://kalsey.com/tools/buttonmaker/
          http://www.lucazappa.com/brilliantMaker/buttonImage.php
          http://www.feedforall.com/public/rss-graphic-tool.htm
          http://www.kalsey.com/tools/buttonmaker/
          http://www.yugatech.com/make.php
          http://msdn.microsoft.com/workshop/samples/author/dhtml/DXTidemo/DXTi...


          http://www.hkwebs.net/catalog/tools/buttonmaker/index.php
          Email圖標生成網站:


          http://email.playtime.uni.cc/
          http://services.nexodyne.com/email/
          http://gizmo967.mgs3.org/Gmail/
          http://www.hkwebs.net/catalog/tools/gmail/
          http://sagittarius.dip.jp/~toshi/cgi-bin/designmail/designmail.html
          http://www.eoool.com/
          Logo生成網站:


          http://phorum.com.tw/Generator.aspx
          http://www.logoyes.com/lc_leftframe.htm
          http://cooltext.com/Default.aspx
          Banner圖片制作網站:


          http://www.bannerbreak.com/index.php
          在線圖片生成網站:


          http://www.streetsigngenerator.com/
          http://www.letterjames.de/
          圖片分割器: http://www.html-kit.com/e/is.cgi
          立體圖片生成器: http://www.chami.com/html-kit/services/imge/
          圖片生成郵票:
          http://photo.stamps.com/PhotoStamps/?source=si00001331
          個性拼圖: http://www.jigcool.com/jigonline/jigonline1_sc.php
          印章制作: http://caishu.sina.com.cn/

          又一組在線生成工具資源大全

          1.韓國身份證的生成以及驗證
          http://www.udeng.com/images/hanguo.htm

          3.GIF圖片的文字LOGO在線生成
          http://www.3dtextmaker.com/cgi-bin/3dtext.pl

          4.在線制作logo,bannar的網站
          www.crazystudy.com

          5.3D文字圖片GIF在線制作
          works.com/image_editor.html

          SAINT.Assess the Security of Computer Networks
          http://www.saintcorporation.com/saint/
          saint在linux著名的掃描軟件下面那個是下載地址

          SATAN.Port Scanner with a Web Interface
          http://www.ibiblio.org/pub/packages...atan-for-Linux/

          Abacus.Intrusion Prevention System
          http://www.psionic.com/abacus/

          Firewall Generator(在線生成簡單的防火墻腳本)
          http://www.citadec.com/FirewallGenerator.html

          8.身份證號碼在線生成器
          http://i972.net/~gen/

          9.在線字體圖片生成
          http://www.youmade.com/font/

          10.中外破解補丁和注冊機在線求救
          http://hmay.qq.topzj.com/

          11.在線生成條碼打印
          http://www.027hc.com/y1.asp
          http://www.nlscan.com/soucecentre/demo.asp
          http://www.gzbonny.com/asp/barcode.asp

          12.在線圖形特效生成
          http://www.chami.com/

          13.聊天工具在線狀態生成器
          http://www.onlinestatus.org/forum/usage.php??
          posted @ 2007-08-07 18:52 jadmin 閱讀(68) | 評論 (0)編輯 收藏

          1.(double) (Math.round(sd3*10000)/10000.0);

          這樣為保持4位

          (double) (Math.round(sd3*100)/100.0);

          這樣為保持2位.

          2.另一種辦法

          import java.text.DecimalFormat;

          DecimalFormat df2?? = new DecimalFormat("###.00");

          DecimalFormat df2?? = new DecimalFormat("###.000");

          System.out.println(df2.format(doube_var));

          第一個為2位,第二個為3位.

          posted @ 2007-08-06 04:49 jadmin 閱讀(125) | 評論 (0)編輯 收藏

            由于現在家用電腦所使用的操作系統多數為Win XP 和Win2000 pro(建議還在使用98的朋友換換系統,連微軟都放棄了的系統你還用它干嘛?)所以后面我將主要講一下基于這兩個操作系統的安全防范。

            個人電腦常見的被入侵方式:

            談到個人上網時的安全,還是先把大家可能會遇到的問題歸個類吧。我們遇到的入侵方式大概包括了以下幾種:

            (1) 被他人盜取密碼;

            (2) 系統被木馬攻擊;

            (3) 瀏覽網頁時被惡意的java scrpit程序攻擊;

            (4) QQ被攻擊或泄漏信息;

            (5) 病毒感染;

            (6) 系統存在漏洞使他人攻擊自己。

            (7) 黑客的惡意攻擊。

            下面我們就來看看通過什么樣的手段來更有效的防范攻擊。

            1.察看本地共享資源

            運行CMD輸入net share,如果看到有異常的共享,那么應該關閉。但是有時你關閉共享下次開機的時候又出現了,那么你應該考慮一下,你的機器是否已經被黑客所控制了,或者中了病毒。

            2.刪除共享(每次輸入一個)

            net share admin$ /delete
            net share c$ /delete
            net share d$ /delete(如果有e,f,……可以繼續刪除)

            3.刪除ipc

            在運行內輸入regedit,在注冊表中找到 HKEY-LOCAL_MACHINESYSTEMCurrentControSetControlLSA 項里數值名稱RestrictAnonymous的數值數據由0改為1。

            4.關閉自己的139端口,ipc和RPC漏洞存在于此。

            關閉139端口的方法是在“網絡和撥號連接”中“本地連接”中選取“Internet協議(TCP/IP)”屬性,進入“高級TCP/IP設置”“WinS設置”里面有一項“禁用TCP/IP的NETBIOS”,打勾就關閉了139端口。

            5.防止rpc漏洞

            打開管理工具——服務——找到RPC(Remote Procedure Call (RPC) Locator)服務——將故障恢復中的第一次失敗,第二次失敗,后續失敗,都設置為不操作。

            XP SP2和2000 pro sp4,均不存在該漏洞。

            6.445端口的關閉

            修改注冊表,添加一個鍵值

            HKEY_LOCAL_MACHINESystemCurrentControlSetServicesNetBTParameters在右面的窗口建立一個SMBDeviceEnabled 為REG_DWORD類型鍵值為 0這樣就ok了

            7.3389的關閉

            XP:我的電腦上點右鍵選屬性--> 遠程,將里面的遠程協助和遠程桌面兩個選項框里的勾去掉。

            Win2000server 開始--> 程序--> 管理工具--> 服務里找到Terminal Services服務項,選中屬性選項將啟動類型改成手動,并停止該服務。(該方法在XP同樣適用)

            使用2000 pro的朋友注意,網絡上有很多文章說在Win2000pro 開始--> 設置--> 控制面板--> 管理工具--> 服務里找到Terminal Services服務項,選中屬性選項將啟動類型改成手動,并停止該服務,可以關閉3389,其實在2000pro 中根本不存在Terminal Services。

          posted @ 2007-08-06 04:07 jadmin 閱讀(73) | 評論 (0)編輯 收藏
          “上善若水” 這四個字,出自于老子的《道德經》第八章:“上善若水。水善利萬物而不爭,處眾人之所惡,故幾于道。居善地,心善淵,與善仁,言善信,正善治,事善能,動善時。夫唯不爭,故無尤。”

          它的字面含義是:最高的善像水那樣。水善于幫助萬物而不與萬物相爭。它停留在眾人所不喜歡的地方,所以接近于道。上善的人居住要像水那樣安于卑下,存心要像水那樣深沉,交友要像水那樣相親,言語要像水那樣真誠,為政要像水那樣有條有理,辦事要像水那樣無所不能,行為要想水那樣待機而動。正因為他像水那樣與萬物無爭,所以才沒有煩惱。說到這其中所涵蓋的思想意義,那就需要多做些解釋了。

          老子說:“上善若水,水善利萬物而不爭,此乃謙下之德也;故江海所以能為百谷王者,以其善下之,則能為百谷王。天下莫柔弱于水,而攻堅強者莫之能勝,此乃柔德;故柔之勝剛,弱之勝強堅。因其無有,故能入于無之間,由此可知不言之教、無為之益也。”

          他認為上善的人,就應該象水一樣。水造福萬物,滋養萬物,卻不與萬物爭高下,這才是最為謙虛的美德。江海之所以能夠成為一切河流的歸宿,是因為他善于處在下游的位置上,所以成為百谷王。

          世界上最柔的東西莫過于水,然而它卻能穿透最為堅硬的東西,沒有什么能超過它,例如滴水穿石,這就是“柔德”所在。所以說弱能勝強,柔可克剛。

          不見其形的東西,可以進入到沒有縫隙的東西中去,由此我們知道了“不言”的教導,“無為”的好處。

          老子還說:“以其不爭,故天下莫能與之爭,此乃效法水德也。水幾于道;道無所不在,水無所不利,避高趨下,未嘗有所逆,善處地也;空處湛靜,深不可測。善為淵也;損而不竭,施不求報,善為仁也……

          “道”是產生天地萬物的總根源,是先于具體事物而存在的東西,也是事物的基本規律及其本源。所以“道”是我們每個人都應該認知與理解的。水的德行就是最接近于“道”的,“道”無處不在,因此,水無所不利。它避高趨下,因此不會受到任何阻礙。它可以流淌到任何地方,滋養萬物,洗滌污淖。它處于深潭之中,表面清澈而平靜,但卻深不可測。它源源不斷的流淌,去造福于萬物卻不求回報。這樣的德行, 乃至仁至善……
          posted @ 2007-08-05 07:58 jadmin 閱讀(62) | 評論 (0)編輯 收藏

          在配置jsp開發環境的過程中會碰到不少問題,感謝網上的許多前輩的經驗總結,作者cl41的JSP連接Mysql數據庫攻略和作者Saulzy的MySQL學習筆記等文章對我來說簡直是雪中送碳,為了幫助象我一樣的初學者在此總結了不少作者的經驗,非常感謝他們的無私奉獻精神,也希望更多的人把這種精神發揚光大,呵呵,再次對所參考文章的作者表示最崇高的敬意!
          以下軟件下載連接地址無法顯示的話,請直接到官方網站下載即可!

          軟件下載
          Mysql
          下載版本:mysql-4.1.13-win32.zip(Windows downloads)
          http://dev.mysql.com/downloads/mysql/4.1.html

          JDBC驅動
          下載版本:mysql-connector-java-3.1.10.zip
          http://dev.mysql.com/downloads/connector/j/3.1.html

          下載j2sdk (JAVA 2 PLATFORM STANDARD EDITION DEVELOPMENT KIT 5.0)
          下載版本:jdk-1_5_0_04-windows-i586-p.exe
          http://java.sun.com/j2se/1.5.0/download.jsp

          下載tomcat
          下載版本: jakarta-tomcat-5.5.9.exe
          http://jakarta.apache.org/site/downloads/downloads_tomcat-5.cgi

          安裝,配置j2sdk:

          執行j2sdk安裝程序,按默認設置進行安裝,也可自定義路徑,但需修改下面的配置

          配置j2sdk:

          配置環境變量:

          我的電腦->屬性->高級->環境變量->系統變量中添加以下環境變量:
          JAVA_HOME=C:\Program Files\Java\jdk1.5.0_04
          CLASSPATH=%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
          path=%JAVA_HOME%\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem

          寫一個簡單的java程序來測試J2SDK是否已安裝成功:
          public class hello
          {
          public static void main(String args[])
          {
          System.out.println("Hello");
          }
          }

          將程序保存為文件名為hello.java的文件。

          打開命令提示符窗口,進入到hello.java所在目錄,鍵入下面的命令
          javac hello.java
          java hello
          此時若打印出來hello則安裝成功,若沒有打印出這句話,仔細檢查以上配置是否正確。
          注意系統文件夾選項中應確定“隱藏已知文件類型的擴展名”不勾選(我的電腦?工具?查看)

          安裝,配置tomcat
          執行tomcat安裝程序,按默認設置進行安裝,也可自定義路徑,但需修改下面的配置

          我的電腦->屬性->高級->環境變量->系統變量中添加以下環境變量
          CATALINA_HOME=C:\Program Files\Apache Software Foundation\Tomcat 5.5
          CATALINA_BASE=C:\Program Files\Apache Software Foundation\Tomcat 5.5

          修改環境變量中的classpath,把tomat安裝目錄下的common\lib下的servlet-api.jar添加到classpath中去,
          修改后的classpath如下:
          classpath=%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;C:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib\servlet-api.jar;

          啟動tomcat,在IE中訪問http://localhost:8080,若看到tomcat的歡迎頁面的話說明安裝成功。

          安裝mysql
          解壓縮mysql-4.1.13-win32.zip,運行setup.exe
          首先出現的是安裝向導歡迎界面,直接點擊“Next”
          繼續,選擇安裝類型,選擇“自定義”custom安裝,然后點“Next”下一步,出現自定義安裝界面
          選擇安裝路徑:C:\MySQL Server 4.1(可自定義)
          點“OK”返回到自定義安裝界面,路徑已改為設置的路徑
          點“Next”,準備開始安裝
          點“Install”開始安裝
          完成后出現創建MySQL.com帳號的界面
          如果是首次使用MySQL,選“Create anew free MySQL.com accout”
          點“Next”,輸入你的Email地址和自己設定的用于登錄MySQL.com的密碼
          填完后點“Next”進入第二步
          填寫姓名等相關信息,填完點“Next”,進入第三步
          填完電話號碼、公司名稱等信息后,點“Next”,
          然后出現預覽你剛才填的信息的界面,點“Next”出現安裝完成界面
          注意,這里有個配置向導的選項(Configure the MySQL Server now),
          建議勾選立即配置你的MySQL。許多說安裝完MySQL后無法啟動,原因就在于沒有配置MySQL。
          點擊“Finish”完成安裝,并開始配置MySQL
          點“Next”,進入配置類型選擇頁面。選“Detailed configuration”(詳細配置)
          點“Next”,進入服務類型選擇頁面。選“Developer Machine”(開發者機器),這樣占用系統的資源不會很多
          點“Next”后,進入數據庫用法選擇頁面。選擇“Multifunctional Database”
          點“Next”,進入選擇InnoDB數據存放位置頁面
          不用更改設置,直接放在Installation Path安裝目錄里即可,然后點“Next”,選擇MySQL的同時聯接數
          選擇“Manual Setting”,設置為100(根據自己需要,酌情設置)
          點“Next”,配置MySQL在TCP/IP通訊環境中的端口選擇默認的3306端口即可。
          點“Next”,選擇MySQL中的字符設置
          注意,這里的選擇將會影響你是否能在MySQL中使用中文。選擇gb2312字符集以便支持簡體中文
          點“Next”,設置Windows服務選項
          注意,這里的選擇很關鍵。
          “Install As Windows Service”一定要勾選,這是將MySQL作為Windows的服務運行。
          “Service Name”就用默認的“MySQL”
          下面的“Launch the MySQL Server automatically”一定要勾選,這樣Windows啟動時,MySQL就會自動啟動服務,要不然就要手工啟動MySQL。
          許多人說安裝MySQL后無法啟動、無法連接、出現10061錯誤,原因就在這里。
          點“Next”,設置根帳號root的登錄密碼
          “Modify Security Settings”是設置根帳號的密碼,輸入你設定的密碼即可。
          “Create An Anonymous Account”是創建一個匿名帳號,這樣會導致未經授權的用戶非法訪問你的數據庫,有安全隱患,建議不要勾選。
          點“Next”,MySQL配置向導將依據你上面的所有設定配置MySQL,以便MySQL的運行符合你的需要
          點“Execute”開始配置,當出現“Service started successfully”時,說明你的配置完成,MySQL服務啟動成功
          點“Finish”完成,整個MySQL的配置完成,剩下的就是用MySQL客戶端連接MySQL服務器,然后使用了。


          安裝JDBC驅動:
          解壓縮mysql-connector-java-3.1.10.zip
          將要使用的是mysql-connector-java-3.1.10-bin-g.jar和mysql-connector-java-3.1.10-bin.jar

          配置
          在C:\Program Files\Java目錄下建立mysqlforjdbc子目錄,進入該目錄將mysql-connector-java-3.1.10-bin.jar到該目錄下
          進入C:\Program Files\Java\jdk1.5.0_04\lib目錄將mysql-connector-java-3.1.10-bin-g.jar拷貝到該目錄下
          然后配置classpath,追加%JAVA_HOME%\lib\mysql-connector-java-3.1.10-bin-g.jar;C:\Program Files\Java\mysqlforjdbc\mysql-connector-java-3.1.10-bin.jar;到該環境變量中去
          追加以后環境變量如下:
          CLASSPATH=%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;C:\Program Files\Apache Software Foundation\Tomcat5.5\common\lib\servlet-api.jar;%JAVA_HOME%\lib\mysql-connector-java-3.1.10-bin-g.jar;C:\Program Files\Java\mysqlforjdbc\mysql-connector-java-3.1.10-bin.jar;
          配置這個的目的是讓java應用程序找到連接mysql的驅動.


          查看并啟動MySQL服務
          在Windows XP下安裝完MySQL后,它就已經自動啟動服務了,并且在開始菜單中有其客戶端的快捷方式連接
          可以通過Windows的服務管理器查看。“開始”-“運行”,輸入“services.msc”,回車。
          彈出Windows的服務管理器,然后就可以看見服務名為“mysql”的服務項了,其右邊標明“已啟動”
          在開始菜單-所有程序-MySQL-MySQL Server 4.1-MySQL Command Line Client用客戶端的快捷方式連接
          輸入安裝是設置的密碼即可


          數據庫的使用

          Mysql安裝完畢以后,在開始菜單-所有程序-MySQL-MySQL Server 4.1-MySQL Command Line Client用客戶端的快捷方式連接
          輸入安裝時設置的密碼

          使用mysql的基本命令(在mysql命令行編輯每輸入完命令后最后一定要有分號)
          顯示數據庫:show databases;
          使用數據庫:use 數據庫名;


          建庫
          在mysql里建一個數據庫first,以及在數據庫里建一個表about
          命令:create database first;

          為數據庫設置權限(用戶和密碼)
          命令:grant all privileges on first.* to test@localhost identified by '123456';
          當你執行完這個命令以后,只要你再以用戶名:test,密碼:123456登錄時你就只可以對first這個數據庫操作,這樣避開使用root
          輸入命令:use first;
          使用first數據庫;

          在first庫中建表
          命令:create table about(id int(8) primary key,name varchar(10));

          在表中加入數據:
          命令:insert into????? about values('xyw1026','laojiang');

          退出
          命令:exit


          JSP連接mysql
          在C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps目錄下建立子目錄myapp
          進入C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\myapp目錄下
          用記事本編寫一個文件保存為first.jsp
          代碼如下:
          <%@ page contentType="text/html;charset=gb2312"%>
          <%@ page import="java.sql.*"%>
          <html>
          <body>
          <%Class.forName("org.gjt.mm.mysql.Driver").newInstance();
          String url ="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"
          //first為你的數據庫名
          Connection conn= DriverManager.getConnection(url);
          Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
          String sql="select * from first";
          ResultSet rs=stmt.executeQuery(sql);
          while(rs.next()) {%>
          您的第一個字段內容為:<%=rs.getString(1)%>
          您的第二個字段內容為:<%=rs.getString(2)%>
          <%}%>
          <%out.print("數據庫操作成功,恭喜你");%>
          <%rs.close();
          stmt.close();
          conn.close();
          %>
          </body>
          </html>

          在瀏覽器中輸入:
          http://127.0.0.1:8080/myapp/first.jsp
          若出現:
          id|num
          0 |laojiang

          數據庫操作成功,恭喜你

          表示配置成功

          進入C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\myapp目錄
          在myapp目錄下新建一個目錄WEB-INF,注意,目錄名稱是區分大小寫的;
          在WEB-INF下用記事本新建一個文件,命名為web.xml,內容如下:

          <?xml version="1.0" encoding="ISO-8859-1"?>

          <!DOCTYPE web-app
          PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
          "http://java.sun.com/dtd/web-app_2_3.dtd">

          <web-app>
          <display-name>My Web Application</display-name>
          <description>
          A application for test.
          </description>
          </web-app>

          在myapp下用記事本新建一個測試的jsp頁面,文件名為index.jsp,文件內容如下:

          <html><body><center>
          Now time is: <%=new java.util.Date()%>
          </center></body></html>


          重啟Tomcat
          打開瀏覽器,輸入http://localhost:8080/myapp/index.jsp
          看到當前時間的話說明成功安裝。


          建立自己的Servlet:
          用記事本新建一個servlet程序,文件名為HelloWorld.java,文件內容如下:

          import java.io.*;
          import javax.servlet.*;
          import javax.servlet.http.*;
          public class HelloWorld extends HttpServlet
          {
          public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
          {

          response.setContentType("text/html");
          PrintWriter out = response.getWriter();
          out.println("<html><head><title>");
          out.println("This is my first Servlet");
          out.println("</title></head><body>");
          out.println("<h1>Hello,World!</h1>");
          out.println("</body></html>");

          }
          }


          編譯
          將HelloWorld.java剪切到C:\Program Files\Apache Software Foundation\Tomcat5.5\common\classes目錄下
          命令行方式下輸入:
          cd C:\Program Files\Apache Software Foundation\Tomcat5.5\common\classes
          javac HelloWorld.java
          用javac HelloWorld.java來編譯這個文件,如果出現無法import javax.servlet.*
          則將C:\Program Files\Apache Software Foundation\Tomcat5.5\common\lib目錄下的servlet-api.jar文件拷貝并添加到
          C:\Program Files\Java\jre1.5.0_04\lib\ext目錄中去就可以了

          然后在C:\Program Files\Apache Software Foundation\Tomcat5.5\common\classes下會產生一個編譯后的servlet文件:HelloWorld.class
          用記事本打開C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\ROOT\WEB-INF目錄下的web.xml如下所示,添加后的內容如下:
          .
          .
          .
          <!-- JSPC servlet mappings start -->

          ??????? <servlet>
          ??????????? <servlet-name>org.apache.jsp.index_jsp</servlet-name>
          ??????????? <servlet-class>org.apache.jsp.index_jsp</servlet-class>
          ??????? </servlet>

          ??????? <servlet-mapping>
          ??????????? <servlet-name>org.apache.jsp.index_jsp</servlet-name>
          ??????????? <url-pattern>/index.jsp</url-pattern>
          ??????? </servlet-mapping>

          ????
          ??????? <servlet>
          ??????????? <servlet-name>HelloWorld</servlet-name>
          ??????????? <servlet-class>HelloWorld</servlet-class>
          ??????? </servlet>

          ??????? <servlet-mapping>
          ??????????? <servlet-name>HelloWorld</servlet-name>
          ??????????? <url-pattern>/servlet/HelloWorld</url-pattern>
          ??????? </servlet-mapping>

          <!-- JSPC servlet mappings end -->

          </web-app>

          這段話中的servlet這一段聲明了你要調用的Servlet,而servlet-mapping則是將聲明的servlet“映射”到/servlet/HelloWorld地址上

          啟動Tomcat,啟動瀏覽器,輸入http://localhost:8080//servlet/HelloWorld 如果看到輸出HelloWorld!就說明編寫的servlet成功了。
          注意:修改了web.xml以及新加了class,都要重啟Tomcat


          也可以在自己創建的目錄下測試如:
          將HelloWorld.class拷貝到C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\myapp\WEB-INF\classes目錄下
          其中classes目錄若沒有就創建一個
          用記事本打開C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\myapp\WEB-INF目錄下的web.xml如下所示,修改后的內容如下:
          .
          .
          .
          <!-- JSPC servlet mappings start -->
          ????
          ??????? <servlet>
          ??????????? <servlet-name>HelloWorld</servlet-name>
          ??????????? <servlet-class>HelloWorld</servlet-class>
          ??????? </servlet>

          ??????? <servlet-mapping>
          ??????????? <servlet-name>HelloWorld</servlet-name>
          ??????????? <url-pattern>/servlet/HelloWorld</url-pattern>
          ??????? </servlet-mapping>

          <!-- JSPC servlet mappings end -->

          </web-app>


          啟動Tomcat,啟動瀏覽器,輸入http://localhost:8080/myapp/servlet/HelloWorld 如果看到輸出HelloWorld!就說明編寫的servlet成功了。
          注意:修改了web.xml以及新加了class,都要重啟Tomcat


          建立自己的javaBean:

          用記事本新建一個java程序,文件名為TestBean.java,文件內容如下:
          package test;
          public class TestBean{
          private String name = null;
          public TestBean(String strName_p){
          this.name=strName_p;
          }
          public void setName(String strName_p){
          this.name=strName_p;
          }
          public String getName(){
          return this.name;
          }
          }

          編譯
          將TestBean.java放在c:\test下,使用如下命令編譯:
          C:\test>javac TestBean.java
          然后在c:\Test下會產生一個編譯后的bean文件:TestBean.class
          將TestBean.class文件剪切到C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\myapp\WEB-INF\classes\test目錄下,
          若無某些子目錄則創建一個

          新建一個TestBean.jsp文件,文件內容為:
          <%@ page import="test.TestBean" %>
          <html><body><center>
          <%
          TestBean testBean=new TestBean("This is a test java bean.");
          %>
          Java bean name is: <%=testBean.getName()%>
          </center></body></html>

          重啟Tomcat,啟動瀏覽器,輸入http://localhost:8080/myapp/TestBean.jsp 如果看到輸出Java bean name is: This is a test java bean
          就說明編寫的javaBean成功了。

          posted @ 2007-08-04 10:33 jadmin 閱讀(84) | 評論 (0)編輯 收藏

          1.到http://www.mysql.com下載MySQL數據庫服務器和驅動程序Jdbc driver for MySQL

          2.安裝MySQL數據庫,本人下載的是安裝版本的,所以直接點Setup.exe就可以了,當然也可以下載.zip解壓版本的,不過解壓后要設置下環境變量之類的,麻煩~~

          3.設置驅動程序路徑,本人下載的Jdbc driver for MySQL是mysql-connector-java-5.0.7-bin.jar,將它放到<MySQL_HOME>\,然后在系統環境變量中的classpath加入mysql-connector-java-5.0.7-bin.jar的路徑,如我加入的是:C:\Program Files\MySQL\MySQL Server 5.0\mysql-connector-java-5.0.7-bin.jar,OK

          4.創建數據庫,組合鍵Win+R,輸入cmd后回車,進入命令行模式,鍵入mysql -uroot -p你設置的密碼

          ????? create database mydb01;

          ????? use mydb01;

          ????? create table table1(CD int(8) primary key,NAME varchar(10));

          ????? insert into table1 values(1,'name1');

          ????? insert into table1 values(2,'name2');

          ????? insert into table1 values(3,'name3');

          ????? 輸入命令:select * from table1;如果見到以下內容,則說明數據庫創建成功.

          +------+-------+
          | CD????? | NAME???? |
          +------+-------+
          |?????? 1 | name1 |
          |?????? 2 | name2 |
          |?????? 3 | name3 |
          +------+-------+

          5.編寫連接數據庫的測試代碼

          import java.sql.*;
          import java.sql.Connection;
          import java.sql.DriverManager;

          public class mysqltest {
          ?????? public static void main(String[] args) {
          ?????????? try{
          ?????????????? Class.forName("com.mysql.jdbc.Driver").newInstance();
          ?????????????? String url ="jdbc:mysql://localhost:3306/mydb01";
          ?????????????? Connection conn= DriverManager.getConnection(url,"root","你設置的密碼");
          ?????????????? Statement stmt=conn.createStatement();
          ?????????????? String sql="select * from table1";
          ?????????????? ResultSet rs=stmt.executeQuery(sql);

          ?????????????? while(rs.next()) {
          ?????????????????? System.out.print(rs.getInt("CD")+"\t");
          ?????????????????? System.out.println(rs.getString("NAME"));
          ?????????????? }

          ?????????????? System.out.println("Done");
          ?????????????? rs.close();
          ?????????????? stmt.close();
          ?????????????? conn.close();
          ????????????
          ????????? }catch(Exception e){
          ????????????? e.printStackTrace();
          ????????? }
          ?????? }
          }

          6.再次進入命令行模式,測試一下是否連接成功

          ??? javac mysqltest.java

          ??? java??? mysqltest

          posted @ 2007-08-04 09:24 jadmin 閱讀(53) | 評論 (0)編輯 收藏

          INSERT、DELETE、UPDATE 三種SQL語句是數據庫技術的三大基本語句。 在通常的web開發中對它的處理可以說是無處不在. 如果簡單的都用手工來構造這些SQL語句的話, 一方面給我們的開發帶來很大的工作量, 另一方面系統靈活性受到很大的限制。那么能不能基于某種規則讓系統自動從頁面表單中取出元素構造出SQL語句呢? 首先讓我們看看一般INSERT、DELETE、UPDATE 三種語句的基本形式:

          INSERT INTO table_name (col_1,col_2,col_3,) VALUES (value_1,value_2,value_3 …) 
          
          DELETE FROM table_name WHERE col_n=value_n 
          
          UPDATE table_name SET col_1=value_1,col_2=value_2,col_3=value_3 WHERE col_x=value_x

          我們知道,借用j2ee中的request.getParameterNames()方法可以讀到表單中的所有元素的名稱,有了元素名稱借用request.getParameter(elementName)方法可以獲取該元素的值。假設在開發中我們讓頁面元素的名稱和底層數據庫表的字段名一致。那么在這三種語句中col_n 和 value_n 對我們來說就不是未知的,未知的數據就剩下了 table_name,col_x和value_x 。現在如果我們寫一個方法,傳入request對象,再把table_name,col_x,value_x作為參數傳入方法,那么我們可以輕松的自動構造SQL語句了。

          但這樣做還是有欠靈活,因為一方面每一次使用該方法我們都得人工的設置table_name,col_x和value_x;另一方面別忘了sql語句中對于字符串的字段需要加單引號和替換字符串中間的單引號,而整型、浮點型、系統函數(如now(),to_date()等數據庫函數)等不需要做單引號的處理,這些如果沒有好的解決的話,我們的方法將受到非常大的限制。要達到再進一步分離最好的辦法就是在表單元素命名上面做文章,我們可以自己定義一套元素命名規則,對不同規則命名的元素做不同的處理--設我們定義元素命名規格如下:

          1. table_name,col_x,value_x這類元素,為公共元素。我們規定這類元素名以c_k開頭(c=common),我們限制table_name的元素名為c_table,col_x=value_x定義到一起,元素名定為c_where. 當然我們別忘了我們還需要一個元素表示構造什么樣(INSERT、DELETE、UPDATE)的SQL語句。我們給這個元素命名c_genre,它的值被限制在INSERT、DELETE、UPDATE這三者之中 。

          2. 對于表單中對應數據庫字符串類型的元素,在SQL構造中需要做單引號的處理。這類元素我們暫且稱他們為字符串型元素。字符串型元素我們規定其名為s_+數據庫表字段名 (s=String)。

          3. 對于不需要做但引號處理的元素(如integer型、float型、數據庫系統函數--如now(),to_date()等等)。我們暫且簡單的統稱這類元素為整型元素。對于整型元素我們限制其命名規則為i_+數據庫表字段名(i=Integer)。

          基于上面的規格我們可以非常輕松寫一個javabean。代碼如下:

          /**
          * @version: 1.1
          * @Time: 2005.03.02
          */
          package com.river.page ;
          import java.util.*;
          import javax.servlet.http.HttpServletRequest;
          public class PageUtil {
            private HttpServletRequest request = null ;
            public PageUtil(){}
            public void init(HttpServletRequest _request){
             this.request = _request ;
            }
            public void clear(){
             if(this.request != null){
             this.request = null ;
            }
          }
          public String get(String elementName){
            if(request == null || request.getParameter(elementName) == null){
             return "";
            }else{
             return request.getParameter(elementName);
            }
          }
          
          public String get(HttpServletRequest _request,String elementName){
            init(_request);
            return get(elementName);
          }
          
          public String getSQL(HttpServletRequest _request){
            init(_request);
            return getSQL();
          }
          public String getSQL(){
            String sqlstr = "";
            String c_table = get("c_table");
            String c_genre = get("c_genre");
            String c_where = get("c_where");
            if(c_genre == null || c_genre.equals("")){
             return "the action is null/empty";
            }
            if(c_table == null || c_table.equals("")){
             return "unknow table/empty" ;
            }
            if(c_genre.equalsIgnoreCase("INSERT")){
             java.util.Enumeration arg_names = request.getParameterNames();
             String colstr = "",valstr = "";
             String arg_name,pre_name,end_name ;
             while(arg_names.hasMoreElements()){
              arg_name = String.valueOf(arg_names.nextElement());
              if(arg_name.length() < 2){
               continue;
              }
              pre_name = arg_name.substring(0,2);
              end_name = arg_name.substring(2);
              if(pre_name.equalsIgnoreCase("i_")){
               colstr = colstr+","+end_name;
               if(get(arg_name).equals("")){
                valstr = valstr+",NULL";
               }else{
                valstr = valstr + "," + String.valueOf(get(arg_name));
               }
              }else if(pre_name.equalsIgnoreCase("s_")){
               colstr = colstr+","+end_name;
               if(get(arg_name).equals("")){
                valstr = valstr+",NULL";
               }else{
                valstr = valstr+",'"+get(arg_name).replaceAll("'","''")+"'";
              }
             }
            }
            if(!colstr.equals("")){
             colstr = colstr.substring(1);
             valstr = valstr.substring(1);
            }
            sqlstr = "INSERT INTO "+c_table+" ("+colstr+") VALUES ("+valstr+")";
            return sqlstr;
          }else if(c_genre.equalsIgnoreCase("UPDATE")){
            java.util.Enumeration arg_names = request.getParameterNames();
            String colstr = "";
            String arg_name,pre_name,end_name ;
            while(arg_names.hasMoreElements()){
             arg_name = String.valueOf(arg_names.nextElement()).trim();
             if(arg_name.length() < 2){
              continue;
             }
             pre_name = arg_name.substring(0,2);
             end_name = arg_name.substring(2);
             if(pre_name.equalsIgnoreCase("i_")){
              if(get(arg_name).equals("")){
               colstr += ","+end_name+"=NULL";
              }else{
               colstr += ","+end_name+"="+get(arg_name);
             }
            }else if(pre_name.equalsIgnoreCase("s_")){
             if(get(arg_name).equals("")){
              colstr += ","+end_name+"="+get(arg_name);
             }else{
              colstr += ","+end_name+"='"+get(arg_name).replaceAll("'","''")+"'";
             }
            }
          }
          if(!colstr.equals("")){
            colstr = colstr.substring(1);
          }
          sqlstr = "UPDATE "+c_table+" SET "+colstr;
          if(!c_where.equals("")){
            sqlstr += " WHERE "+c_where;
          }
          return sqlstr;
          }else if(c_genre.equalsIgnoreCase("DELETE")){
          sqlstr = "DELETE FROM "+c_table;
          if(c_where != null && !c_where.equals("")){
            sqlstr += " WHERE "+c_where;
          }
          }else{
            com.river.debug.Debug.show("unknow action type : "+c_genre);
            return null;
          }
          return sqlstr;
          }
          public String toString(){
            return "version 1.0, date 2005.03.02, author river";
          }
          }

          這樣我們就可以根據頁面元素的命名來指導SQL語句的生成。這樣做有很多的明顯的好處:

          1. 減少編碼工作,對于元素很多表單,用不著我們去寫一大堆的代碼,不用去擔心哪個元素落下了,元素名有沒有些錯,單引號有沒有處理。

          2. 通用、穩定、易于維護,javabean固有的優點,就不用太多的說明了。

          3. 分離表層的表單內容與邏輯層SQL語句的構造。設想一下,如果我們數據庫表結構有調整時,那么我們只要修改一下表單就好了,根本就不用理原來寫好的邏輯處理。附帶著再說一句,設想如果我們再寫一個類自動執行SQL,那么對于一些基本的增、刪、改操作都可以映射到同一個action里面來處理,且不是很爽?

          當然,這樣做的缺點也是有的。那就是有一定的性能損耗。特別是碰到表單元素非常多時。但是對于那些不是很"苛刻"的項目這點損耗是值得的。

          posted @ 2007-08-03 20:59 jadmin 閱讀(66) | 評論 (0)編輯 收藏

          世間人,法無定法,然后知非法法也;
          天下事,了猶未了,何妨以不了了之。

          道不是道,心亦非心;花開五葉,結果自成.

          posted @ 2007-08-03 04:03 jadmin 閱讀(68) | 評論 (0)編輯 收藏
           
          posted @ 2007-07-24 03:13 jadmin 閱讀(54) | 評論 (0)編輯 收藏

          =========================http://blog.csdn.net===================================

          進入軟件開發行業也快一年了,很幸運一進入就加入了一個敏捷開發的團隊,敏捷開發的思想確實很好,擁抱變化,最快的做用戶需要的功能,越早發現錯誤,改正錯誤的代價就越小。最近看到《應用Rails進行敏捷Web開發》這本書,就買了下來,雖說現在一直在從事JAVA的開發工作,對ruby和rails也不了解,不過通過學習一些新的語言,來詳細了解敏捷軟件開發,豈不是一舉兩得!要運行書中的Depot項目就要安裝ruby和rails,在網上google了一些資料,很順利的跑起來了,先謝謝網上提供資料的各位了,下面是小弟的學習筆記,記錄下來與大家共享。。。。。。。。。。。。。(偶用的是windows,對linux不是很熟悉呀)

          Ruby官方網站下載:http://www.ruby-lang.org/en/downloads/
          Rails的網站下載:http://rubyforge.org/

          1。到http://rubyforge.org/projects/instantrails/ 下載Instant Rails 1.4,解壓放到D:\InstantRails里面。
          2。在我的電腦->屬性->高級->環境變量,新建RUBY_HOME,值為D:\InstantRails\ruby,然后在Path變量值最后追加;%RUBY_HOME%\bin ,保存即可。
          3。在DOS下,輸入:ruby -v,你就可以看到你所安裝的ruby版本;輸入:gem -v,你就可以看到你所安裝的gem版本。
          4。到http://rubyforge.org/projects/rails/下載Rails1.1.6,包含(rails-1.1.6.zip,rails-1.1.6.gem),放到D:\Rails里面。
          5。在DOS下,切換到D:\Rails,輸入:gem install rails,rails即安裝成功,再輸入:rails -v,你就可以看到你所安裝的rails版本了。

          這樣整個RubyOnRails的框架就安裝好了,按照《應用Rails進行敏捷Web開發》書上的Depot示例操作,很容易就在20分鐘就創建一個物品列表的web應用,真實神奇呀,可見Rails的強大呀,就寫了那么幾行代碼呀!

          =========================http://www.uusam.com/=================================

          1.首先安裝Ruby:

          One-Click Installer - Windows 1.8.5-21??

          下載地址:http://rubyforge.org/frs/?group_id=167&release_id=6672

          2.安裝完畢后現在rubygems:

          rubygems -??? REL_0_9_0??

          下載地址:http://rubyforge.org/frs/?group_id=126&release_id=5803

          解壓出來運行 setup.rb 就ok了。

          3.安裝rails及相關包:

          rails - REL 1.1.6??

          下載地址:http://rubyforge.org/frs/?group_id=307&release_id=6423,選擇rails-1.1.6.gem下載。

          在控制臺運行 gem install rails-1.1.6.gem會提示你相關的插件包,根據提示在下面網址下載以下包,這是我需要的包的。

          下載地址:http://rubyforge.vm.bytemark.co.uk/gems/

          activesupport-1.3.1.gem
          activerecord-1.14.4.gem
          actionpack-1.12.5.gem
          actionmailer-1.2.5.gem
          actionwebservice-1.1.6.gem


          先安裝每個相關包,如:gem install activerecord-1.14.4.gem
          最后運行 gem install rails-1.1.6.gem 就ok了。
          對應每個版本的相關包也不一樣,請查看你安裝的的版本的依賴性。

          最后運行rails -v ,偶的是 1.1.6 。

          這就安裝結束了。

          讓我們開始ror的旅程吧!

          關于Ruby On Rails的介紹見如下鏈接:

          http://hi.baidu.com/jadmin/blog/item/1bf8800140e5cc01738da596.html

          posted @ 2007-07-24 00:14 jadmin 閱讀(145) | 評論 (0)編輯 收藏
          僅列出標題
          共50頁: First 上一頁 34 35 36 37 38 39 40 41 42 下一頁 Last 
          主站蜘蛛池模板: 监利县| 张掖市| 固安县| 湖南省| 莒南县| 宝坻区| 邛崃市| 车险| 土默特左旗| 白河县| 保德县| 柳林县| 磴口县| 本溪市| 晋州市| 榆中县| 微山县| 罗源县| 巴彦淖尔市| 普格县| 岳阳县| 海城市| 卓尼县| 莲花县| 张家口市| 景洪市| 阿鲁科尔沁旗| 临城县| 乐昌市| 财经| 松江区| 渭源县| 杨浦区| 广宁县| 理塘县| 册亨县| 通海县| 塔城市| 刚察县| 大厂| 平罗县|