posts - 431,  comments - 344,  trackbacks - 0
          出處:http://www.webjx.com

          經常看到jsp的初學者問tomcat下如何配置jsp、servlet和bean的問題,于是總結了一下如何tomcat下配置jsp、servlet和ben,希望對那些初學者有所幫助。

          一、開發環境配置

          第一步:下載j2sdk和tomcat:到sun官方站(http://java.sun.com/j2se/1.5.0/download.jsp)下載j2sdk,注意下載版本為Windows Offline Installation的SDK,同時最好下載J2SE 1.5.0 Documentation,然后到tomcat官方站點(http://jakarta.apache.org/site/downloads/downloads_tomcat-5.cgi)下載tomcat(下載最新5.5.9版本的tomcat);

          第二步:安裝和配置你的j2sdk和tomcat:執行j2sdk和tomcat的安裝程序,然后按默認設置進行安裝即可。

          1.安裝j2sdk以后,需要配置一下環境變量,在我的電腦->屬性->高級->環境變量->系統變量中添加以下環境變量(假定你的j2sdk安裝在c:\j2sdk1.5.0):

          JAVA_HOME=c:\j2sdk1.5.0
           classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(.;一定不能少,因為它代表當前路徑)
           path=%JAVA_HOME%\bin

          接著可以寫一個簡單的java程序來測試J2SDK是否已安裝成功:

          public class Test{
          public static void main(String args[]){
          System.out.println("This is a test program.");
          }
          }

          將上面的這段程序保存為文件名為Test.java的文件。

          然后打開命令提示符窗口,cd到你的Test.java所在目錄,然后鍵入下面的命令

          javac Test.java
           Java Test

          此時如果看到打印出來This is a test program.的話說明安裝成功了,如果沒有打印出這句話,你需要仔細檢查一下你的配置情況。

          2.安裝Tomcat后,在我的電腦->屬性->高級->環境變量->系統變量中添加以下環境變量(假定你的tomcat安裝在c:\tomcat):

          CATALINA_HOME=c:\tomcat
           CATALINA_BASE=c:\tomcat

          然后修改環境變量中的classpath,把tomat安裝目錄下的common\lib下的(可以根據實際追加)servlet.jar追加到classpath中去,修改后的classpath如下:

          classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet.jar;

          接著可以啟動tomcat,在IE中訪問http://localhost:8080,如果看到tomcat的歡迎頁面的話說明安裝成功了。

          第三步:建立自己的jsp app目錄

          1.到Tomcat的安裝目錄的webapps目錄,可以看到ROOT,examples, tomcat-docs之類Tomcat自帶的的目錄;
           2.在webapps目錄下新建一個目錄,起名叫myapp;
           3.myapp下新建一個目錄WEB-INF,注意,目錄名稱是區分大小寫的;
           4.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>

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

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

          6.重啟Tomcat

          7.打開瀏覽器,輸入http://localhost:8080/myapp/index.jsp 看到當前時間的話說明就成功了。

          第四步:建立自己的Servlet:

          1.用你最熟悉的編輯器(建議使用有語法檢查的java ide)新建一個servlet程序,文件名為Test.java,文件內容如下:

          package test;
          import Java.io.IOException;
          import Java.io.PrintWriter;
          import javax.servlet.ServletException;
          import javax.servlet.http.HttpServlet;
          import javax.servlet.http.HttpServletRequest;
          import javax.servlet.http.HttpServletResponse;
          public class Test extends HttpServlet {
          protected void doGet(HttpServletRequest request, HttpServletResponse response)
          throws ServletException, IOException {
          PrintWriter out=response.getWriter();
          out.println("<html><body><h1>This is a servlet test.</h1></body></html>");
          out.flush();
          }
          }

          2 .編譯
           將Test.java放在c:\test下,使用如下命令編譯:

          C:\Test>javac Test.java

          然后在c:\Test下會產生一個編譯后的servlet文件:Test.class

          3 .將結構test\Test.class剪切到%CATALINA_HOME%\webapps\myapp\WEB-INF\classes下,也就是剪切那個test目錄到classes目錄下,如果classes目錄不存在,就新建一個。 現在webapps\myapp\WEB-INF\classes下有test\Test.class的文件目錄結構

          4 .修改webapps\myapp\WEB-INF\web.xml,添加servlet和servlet-mapping

          編輯后的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>
          <servlet>
          <servlet-name>Test</servlet-name>
          <display-name>Test</display-name>
          <description>A test Servlet</description>
          <servlet-class>test.Test</servlet-class>
          </servlet>
          <servlet-mapping>
          <servlet-name>Test</servlet-name>
          <url-pattern>/Test</url-pattern>
          </servlet-mapping>
          </web-app>

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

          5 .好了,重啟動Tomcat,啟動瀏覽器,輸入http://localhost:8080/myapp/Test 如果看到輸出This is a servlet test.就說明編寫的servlet成功了。

          注意:修改了web.xml以及新加了class,都要重啟Tomcat

          第四步:建立自己的Bean:

          1.用你最熟悉的編輯器(建議使用有語法檢查的java ide)新建一個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;
          }
          }

          2 .編譯

          將TestBean.java放在c:\test下,使用如下命令編譯:

          C:\Test>javac TestBean.java

          然后在c:\Test下會產生一個編譯后的bean文件:TestBean.class

          3 .將TestBean.class文件剪切到 %CATALINA_HOME%\webapps\myapp\WEB-INF\classes\test下,

          4 .新建一個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>

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

          這樣就完成了整個Tomcat下的jsp、servlet和javabean的配置。接下來需要做的事情就是多看書、多讀別人的好代碼,自己多動手寫代碼以增強自己在這方面開發的能力了。

          jvm應填寫到
           c:\j2sdk\bin

          給你一個簡單的配置::::

          JSP環境配置心得

          首先要說的是,使用jdk+tomcat完全可以配置我們的jsp服務器,不再需要其實任何東東,有很多文章介紹了Apache,其實根本用不著,一般的學習調試tomcat完全可以勝任了。

          安裝jdk后,tomcat在安裝之前會自動找到jdk的安裝路徑,一路點擊"下一步",經過一段時間的文件復制,最后"close",完成comcat的安裝。

          您最好去下載一個版本較高的tomcat,比如4.1以上的,因為它不需要設置太多的系統變量,右擊"我的電腦",選擇"屬性"->"高級"->"環境變量"->"系統變量",新建一個TOMCAT_HOME,值設置成你的tomcat所在的路徑,比如:D:\Program Files\Apache Group\Tomcat 5.5,配置完成。

          從開始菜單中找到tomcat選項,一般打開順序是:開始->程序->Apache Tomcat 5.5,選擇"Start Tomcat",讓jsp服務器開始運行,此時會打開一個類似Dos的窗口,會顯示一些相關的信息。

          如果您使用代理上網,一定要先撤掉代理,不然您的jsp程序永遠也得不到執行。如果不是代理的,這一步就跳過了。

          打開瀏覽器,在地址欄中輸入:http://localhost:8080,如果看到有老虎(我也不知道是老虎還是貓)的畫面,恭喜您,您成功了一半。

          先來享受一下成功的喜悅吧,請輸入下面的代碼:

          <html>
          <head>
          <title>First Page</title>
          </head>
          <body>
          <H3>Today is: h
          <%= new Java.util.Date() %>
          </H3>
          </body>
          </html>

          將該程序保存為:First.jsp,放到Tomcat的ROOT目錄下,然后在瀏覽器的地址欄中輸入:http://localhost:8080/First.jsp,(First.jsp跟我們保存的文件名的大小寫要一致)回車,如果不出意外,應該可以看到形如Today is: h Fri Apr 11 08:32:38 CST 2003 的結果。

          注意:ROOT是tomcat的默認虛擬目錄,如果要改成自己的虛擬目錄怎么辦呢?請繼續往下看吧。

          要改成自己的虛擬目錄,就要請出server.xml來了,該文件是一個配置文件,在Tomcat\conf目錄下,使用任何文本編輯軟件都能打開它,我們先找到下面一句:

          <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
          port="8080" minProcessors="5" maxProcessors="75"
          enableLookups="true" redirectPort="8443"
          acceptCount="100" debug="0" connectionTimeout="20000"
          useURIValidationHack="false" disableUploadTimeout="true" />

          這里的port="8080"就是端口,我們完全可以用別的端口來代替,但不能是被系統占用的端口(0--1023),這里簡單提一下。

          下面我們再往下找,會發現以下的語句:

          </Context>
           </Host>

          我們就應該找到這兩個語句,如果不懂E文,您就認定這兩個語句好了。然后我們將該語句更改如下:

          </Context>
          <Context path="/myjsp" debug="0" docBase="e:/myjsp" reloadable="true">
          </Context>
          </Host>

          這里的path="/myjsp"就是我們就配置的虛擬目錄了,以后在地址欄中輸入http://localhost:8080/myjsp即可。而docBase="e:/myjsp" 則是機器本地路徑,他們通過這個語句形成一個映射關系,其它照抄。

          將上面的First.jsp文件放到e:/myjsp目錄下,輸入http://localhost:8080/myjsp/First.jsp,是不是有一種喜上眉梢的感覺?

          在論壇里我見得最多的就是很多人不知道javaBean文件放到哪里,老實說開始我也不知道,更令人不解的是,十個人有九種不同的說法,這更讓我們茫然。其實這問題也不是我們想像的那么復雜,我們以一個例子說明:

          先建立一個java程序,代碼如下:

          package hall;
          public class SimpleBean {
          private String message = "No message specified";
          public String getMessage() {
          return(message);
          }
          public void setMessage(String message) {
          this.message = message;
          }
          }

          保存為SimpleBean.java,編譯后會生成一個包,其實就相當于一個目錄,也就是SimpleBean.class會存放在hall目錄中,暫且保存起來,將來備用。

          再輸入以下代碼:

          <HTML>
          <HEAD>
          <TITLE>Reusing JavaBeans in JSP</TITLE>
          </HEAD>
          <BODY>
          <CENTER>
          <TABLE BORDER=5>
          <TR><TH CLASS="TITLE">
          Reusing JavaBeans in JSP</TABLE>
          </CENTER>
          <P>
          <jsp:useBean id="test" class="hall.SimpleBean" />
          <jsp:setProperty name="test" property="message" value="Hello WWW" />
          <H1>Message: <I>
          <jsp:getProperty name="test" property="message" />
          </I></H1>
          </BODY>

          保存在我們剛才建立的虛擬目錄e:/myjsp下面,并命名為:BeanTest.jsp。

          現在我們應該將hall(包)目錄放在哪兒呢?別急,我們先在e:/myjsp下建立一個文件夾WEB-INF,然后再在WEB-INF下建立一個classes文件夾,最后將hall目錄放到classes下,當然,hall下的字節碼文件SimpleBean.class也一并要移過來,而SimpleBean.java就和BeanTest.jsp放到同一目錄吧(可以不需要放的,自己試試)。

          重新啟動機器(如果您試了好多次都不行,這一步一定要做),在瀏覽器中輸入:http://localhost:8080/myjsp/BeanTest.jsp,您看到了什么?呵,別告訴我您什么都沒看到,那肯定是您設置的問題了。

          Java學習 - 技術文章中心

          初學者問的諸如:《怎樣配置環境變量》《怎樣運行Servlet》啊?這樣的問題太多了,現在我寫一個初學者入門必讀,以便對初學者有指導作用!

          首先是下載工具:

          我建議初學者用Editplus+JDK,我覺得如果用例如JB,Eclipse,JCreator,雖然剛開始的時候比較方便,但是確使初學者門不知道怎樣配置環境變量,

          從而難以達到知其然,知其所以然的地步

          可以通過如下地址下載:

          Editplus(最新版本是v2.11):http://count.skycn.com/softdown.php?id=3641&url=http://sc-http.skycn.net/down/epp211a_cn.exe(要照注冊碼就自己找吧,網上很多的)

          JDK(最新版本是Java2sdk1_5_0):http://192.18.97.54/ECom/EComTicketServlet/BEGIN30AA3B63E5C2F61C8C26F84B78970A98/-2147483648/926882595/1/627578/627410/926882595/2ts+/westCoastFSEND/jdk-1.5.0_04-oth-JPR/jdk-1.5.0_04-oth-JPR:3/jdk-1_5_0_04-windows-i586-p.exe(這是For Windows)

          然后就是安裝JDK,我是把它裝到從c:\JDK目錄下面:

          然后就是CLASSPATH的問題了:

          正如操作系統利用PATH來搜索可執行程序一樣,Java運行環境也會遍歷CLASSPATH來查找類,即便是HelloWorld這樣簡單的程序,JVM也會遍歷

          CLASSPATH定義的每一個路徑,直到找到相應的文件為止。

          相信大家用的系統不是2k就是XP,然后就應當如下設置Path:

          我的電腦->屬性->高級->環境變量

          然后在環境變量的Path后面追加: C:\JDK\bin;.;C:\JDK\lib

          也可以這樣配置:C:\JDK\bin;.;C:\JDK\lib\dt.jar;C:\JDK\lib\tools.jar

          ★記住:環境變量中的 . 切記不能少,它表示當前路徑,如果少掉出現的錯誤等會就說!

          dt.jar是關于運行環境的類庫,tools.jar是關于一些工具的類庫

          如果沒有配置:C:\JDK\bin,則會出現 " javac′ 不是內部或外部命令,也不是可運行的程序或批處理文件。"這樣的錯誤。

          然后下面就該寫程序了:

          首先是(HelloWorld.java),打開Editplus,新建一個Java文件,請照著如下輸入,要一字不漏,并且分清大小寫:

          public class HelloWorld{
          public static void main(String[] args){
          System.out.println("Hello,World!");
          }
          }

          然后把這個文件保存(ctrl + s)到HelloWorld.java,記住大小寫一定要分清,是HelloWorld.java不是helloworld.java或者其它的

          下面就該運行了,開始->運行->cmd

          在控制臺中把目錄切換到當前目錄:

          javac HelloWorld.java
           Java HelloWorld

          你就會在控制臺上看見輸出的Hello,World!(沒出來?我把電腦吃了:))

          javac是編譯命令,它把HelloWorld.java編譯成HelloWorld.class

          java就是解釋命令,JVM把HelloWorld.class解釋執行.

          在這個時候:

          1。如果出現Exception in thread "main" Java.lang.NoClassDefFoundError: HelloWorld

          那就是你在環境變量中沒有加上那個.(dot)

          2。如果出現Exception in thread "main" Java.lang.NoSuchMethodError: main

          或者HelloWorld.java:1: Public class helloworld must be defined in a file called

          "HelloWorld.java".

          那就是你沒有分清大小寫的寫入這個HelloWorld,或者保存得時候沒有保存為HelloWorld.java

          這個名字一定要跟public class的名字一樣

          對于環境變量的問題就說到這里,下面我先所說怎么在Editplus里面編譯和運行,在Tools->參數設置->配置用戶工具

          1.添加工具(添加應用程序)

          菜單文字:Compile Java Program

          程序:C:\JDK\bin\javac.exe

          參數:文件名稱

          初始目錄:文件目錄

          2.添加工具(添加應用程序)

          菜單文字:Run Java Program

          程序:C:\JDK\bin\java.exe

          參數:文件名稱(不含擴展名)

          初始目錄:文件目錄

          工具組名稱可以隨便添,比如Debug Java Program

          然后在Tools的下拉菜單中,你就會看見Compile Java Program以及Run Java Program這兩個選項,以后你就可以利用ctrl + 1編譯和ctrl +2運行程序了

          下面就討論Servlet的運行:

          首先要運行Servlet,則需要JSP/Servlet container,我建議初學者用Tomcat

          Tomcat(最新版本5.5):http://apache.justdn.org/jakarta/tomcat-5/v5.5.9/bin/jakarta-tomcat-5.5.9.exe然后把這個壓縮包解壓到:

          C:\Tomcat

          然后再配置環境變量:

          添加三個系統變量:

          JAVA_HOME: C:\JDK
           TOMCAT_HOME: C:\Tomcat
           CLASSPATH: %JAVA_HOME%\lib;%TOMCAT_HOME%\lib

          Tomcat的環境變量就配置完畢了,下面檢驗Tomcat是否能夠運行:

          在控制臺中轉到C:\Tomcat\bin這個目錄,運行startup,然后回出現一個窗口,連跳一大串東西,最后表示Server已經運行

          在瀏覽器中輸入http://localhost:8080,出現歡迎界面,則表示Tomcat沒問題了

          然后和上面一樣,寫入你的第一個Servlet

          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>");

          }
          }

          然后照樣用javac HelloWorld.java來編譯這個文件,如果出現無法import javax.servlet.*

          那么就是應該把C:\Tomcat\common\lib里面的servlet.jar(根據實際來看)文件拷貝到C:\JDK\jre\lib\ext中,再次編譯,就沒有問題了!

          然后在Tomcat目錄里面的C:\Tomcat\webapps\ROOT里面按如下的文件結構:

          ROOT\index.html
          ROOT\welcom.jsp
          ROOT\WEB-INF\lib\MyServlet.jar(如果你的servlet的.class打成了.jar文件,則放在lib下面)
          ROOT\WEB-INF\classes\HelloWorld.class(把上面生成的HelloWorld.class文件放在這個里面)

          然后在瀏覽器中輸入http://localhost:8080/servlet/HelloWorld,于是Server眾望所歸的報錯了:Error 404--Not Found

          怎么回事呢?

          Servlet必須使用C:\Tomcat\webapps\ROOT\WEB-INF這個目錄下面的web.xml文件進行注冊,用EP打開這個web.xml文件,在里面加入

          <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>

          這樣的結構

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

          表示指定包含的servlet類.而以下的結構

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

          表示指定HelloServlet應當映射到哪一種URL模式。

          在修改web.xml完畢過后,重新啟動Server,然后再輸入http://localhost:8080/servlet/HelloWorld,那么偌大一個Hello,World!等著你呢。

          posted on 2006-11-22 09:02 周銳 閱讀(425) 評論(0)  編輯  收藏 所屬分類: ApacheJsp
          主站蜘蛛池模板: 余江县| 厦门市| 宜兴市| 论坛| 沐川县| 新干县| 文昌市| 行唐县| 平原县| 巴里| 兰溪市| 龙陵县| 宁强县| 凤庆县| 离岛区| 栾川县| 惠安县| 浦东新区| 汤原县| 馆陶县| 洛川县| 靖西县| 湖州市| 若羌县| 永丰县| 宁陕县| 德兴市| 泽库县| 平江县| 同心县| 当涂县| 惠来县| 庄河市| 南平市| 宜良县| 香河县| 乐业县| 高要市| 咸阳市| 玉树县| 五家渠市|