初學者入門:J2SDK和TOMCAT的安裝及配置
發表于:2007-07-04來源:作者:點擊數:
標簽:
經??吹絡sp的初學者問tomcat下如何配置jsp、servlet的問題,于是總結了一下如何tomcat下配置jsp、servlet,希望對那些初學者有所幫助。 第一步:下載j2sdk和tomcat:到sun官方站點 最新的jdk為1.5,tomcat為5.5,建議jdk1.4以上,tomcat4.0以上 第二步:安
經??吹絡sp的初學者問tomcat下如何配置jsp、servlet的問題,于是總結了一下如何tomcat下配置jsp、servlet,希望對那些初學者有所幫助。
第一步:
下載j2sdk和tomcat:到sun官方站點
最新的jdk為1.5,tomcat為5.5,建議jdk1.4以上,tomcat4.0以上
第二步:安裝和配置你的j2sdk和tomcat:執行j2sdk和tomcat的安裝程序,然后設置按照路徑進行安裝即可。
1.安裝j2sdk以后,需要配置一下環境變量,在我的電腦->屬性->高級->環境變量->系統變量中添加以下環境變量(假定你的j2sdk安裝在c:\j2sdk1.4.2):
JAVA_HOME=c:
\j2sdk1.4.2
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
TOMCAT_HOME: 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.//D
TD 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:
寫入你的第一個Servlet:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld
extends HttpServlet
{
public void doGet
(HttpServletRequest request,
HttpServletResponse response)th
rows 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.servl
et.*
那么就是應該把C:\Tomcat\common\lib里面的servlet.jar文件拷貝到C:\JDK\jre\lib\e
xt中,再次編譯,就沒有問題了。
然后在Tomcat目錄里面的C:\Tomcat\webapps\ROOT里面按如下的文件結構:
ROOT\index.html
ROOT\welcom.jsp
ROOT\WEB-INF\lib\MyServlet.jar
?。ㄈ绻愕膕ervlet的.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-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!等著你呢。
原文轉自:http://www.anti-gravitydesign.com