出于工作&興趣,最近在學習研究jsp/servlet ,結合理論再編程實踐,感覺學到的東西多而雜,需要好好梳理一下
,于是寫下這篇心得,與大家一起分享。由于初涉java ,很多總結出的僅僅是經驗或個人感受,加上第一次寫技術博,緊張得流汗,謬誤難免,歡迎大家多多指教。我的聯系方式是:tianlinux at gmail dot com 。MSN 帳號:tianlinx at hotmail dot com 。 我假設了您已經熟悉基本的java 語法,并且對Web 應用程序的概念也有基本的了解了。我還假設了您的計算機已經安裝了JDK1.4以上,如果還沒有裝,就到sun的官網去下載吧,或者google一下,應該很好找到的。當您準備好這一切,我們就可以開始一起學習JSP/Servlet了。
JSP/Servlet 的關系
JSP &Servlet 屬于java web 層的技術,作用都是用來實現動態網頁。JSP 主要面向的是網頁設計人員,Servlet 主要面向的是程序設計人員。無論你采用兩者中哪一種單一的技術,你都可以解決所有動態網頁呈現的問題。從運行方式上講,JSP 事實上需要轉譯為Servlet 才能運行,所以,有一種說法說它們是"一面兩體",這是很恰當的。Servlet 從本質上講,就是java 程序片段。
JSP/Servlet 容器
既然 Servlet是 java程序片段,那么它當然是不能直接運行的,必須把它放到某種運行環境當中,它才能發揮它的作用。這個環境就是我們講的"容器"。容器也是 java 程序,它的主要功能除了為Servlet 提供運行環境,還有更重要的,就是提供網絡傳輸協議與java 程序實體的相互轉換。為什么需要這種轉換呢?因為Web 應用程序是分布式的,客戶端和服務器端之間需要交換數據,就要通過網絡,并在一定的通訊協議下進行。最常見和常用的協議是HTTP 。客戶端向服務器發送數據,遵循的是HTTP 協議的數據格式,服務器向客戶端發送數據也是遵循HTTP協議的。在客戶端和服務器端,可能存在著不同的編程語言編寫的程序,比如java,C++等等。各種語言都有自己用于處理HTTP協議數據的方法(類),為了使用java提供的各種HTTP處理相關的類,必須將HTTP協議下的數據做一定的轉換,轉換成一些java object,這樣才能使用java的方法進行數據處理。同理,當這些處理完成,又需要將這些java object轉換回HTTP協議下的數據,反饋給客戶端(JSP/Servlet當然存在與服務器端)。JSP/Servlet容器就扮演了完成這個雙向轉換的角色。至于JSP/Servlet容器為java程序片段提供運行環境的細節,我們在后面再討論這個問題。
我用的JSP/Servlet容器是Tomcat 5.5.12。這里給大家一個google上找到的鏈接,下載源比較穩定。http://leshui.clwind.com/Download/apache-tomcat-5.5.12.exe。
下載完成后,即可安裝。
安裝過程沒有太大問題,中間有步需要輸入一個管理員密碼,自己隨便設吧,這里我們只是針對學習,不針對商業應用,所以設個傻瓜密碼也無所謂。這個密碼在你配置服務器的時候會用到。

完成了Tomcat的安裝,您馬上就可以啟動您自己的服務器了,^_^,如果以前沒有做過,有點緊張吧。
在啟動以前,讓我們先打開web瀏覽器,輸入:http://localhost:8080,回車,看到了什么?“該頁無法顯示”一類的顯示吧,呵呵,不要急,馬上給您一個驚喜。
很簡單:開始->程序->Apache Tomcat 5.5->configure tomcat。會看到下面那個對話框:

為了快點體驗到自己建服務器的快感,我們不做任何設置,先點了Start再說吧,等待啟動完成。好了,現在您的計算機已經作為服務器啟動了。剛才那個“該頁無法顯示”呢?刷新一下試試。如果您在左上角看到那只黃貓,您的服務器就已經啟動了!
在這個網頁的左邊,Administration里面,有Tomcat Manager的鏈接,點擊它,會彈出一個輸入用戶和密碼的對話框,輸入剛才安裝的時候的帳號密碼。默認帳號是admin,密碼。。。不會就忘了吧:)。
進入了Manager的頁面了嗎?好了,您可以瀏覽一下這個網頁的內容,在Applications這個列表里面,列出了在當前服務器上可以瀏覽的所有路徑。您可以隨意瀏覽一下,里面如果有一些jsp的例子您現在無法理解,沒有關系,我們現在先拋開它。今天要做的最后一件事就是在這個服務器上建立自己的一個web文件夾,以后我們將在這個文件夾中部署我們自己的寫的小web應用程序(JSP/Servlet)。目前列表中的所有路徑,都是在Tomcat的安裝路徑下,/webapp/xxx下面。
好了,言歸正傳,我們現在來建自己的文件夾,并發布到服務器上。在您的本地硬盤上任意地新建一個文件夾,并任意命名。我這里以D:/webapp/為例子。我想把這個文件夾作為我的webapp文件夾,并且在服務器上,這個文件夾的名字叫"tianlinux"。在剛才那個manager的頁面下面,Deploy欄,里面Context Path (optional): 填上"/tianlinux"(不要引號!),在WAR or Directory URL:填上"file:d:/webapp",然后點擊"Deploy",好了,看這個網頁的最上面Message欄,是否已經顯示"OK - Deployed application at context path /tianlinux"?好了,現在在Applications列表里面也有/tianlinux這個子項了。點擊它,會跳轉到directories list的頁面。當然,現在這個文件夾里面沒有任何的文件和文件夾,怪可憐的,新建一個txt文檔,改名為:hello.jsp,在里面添加如下一句代碼

<% out.println("Hello, JSP/Servlet"); %>
保存,關閉。這時你需要reload一下這個文件夾,就在Applications的列表里就有鏈接~或者干脆把/tianlinux文件夾Undeploy,再重新deploy一次也可以。
訪問:http://localhost:8080/tianlinux/hello.jsp。如果顯示出"Hello, JSP/Servlet",今天就打完收工了。。。第一次寫,好累。如果沒有搞定。。。給我留言或寫信吧。
下期:JSP基礎。
posted on 2007-05-29 22:58
tianlinux 閱讀(1872)
評論(8) 編輯 收藏 所屬分類:
JSP/Servlet