1. 程式人生 > >Tomcat手工搭建Jsp和Servlet程序

Tomcat手工搭建Jsp和Servlet程序

.org light pri meta text map 不同 bsp timeout

要執行J2EE的程序,就必須安裝相關的容器。而怎樣選擇JSP+Servlet模式。Tomcat是非常重要的選擇之中的一個,是世界上最為廣泛的Servlet和JSP容器。

下載:

1. URL: http://tomcat.apache.org/ Tomcat 7.0.52

2. 單擊左面”Tomcat 7.0”,進入Tomcat 7.0.52頁面

3. 單擊Binary Distributions以下的,操作系統匹配的ZIP文件。

技術分享

配置:

1. 將下載後的文件解壓縮到D:\apache-tomcat-7.0.52文件夾。

2. 在系統環境變量中新添加一個環境變量TOMCAT_HOME

TOMCAT_HOME=D:\apache-tomcat-7.0.52

技術分享


驗證:

驗證Tomcat安裝是否成功。過程例如以下:

1. 雙擊Tomcat安裝文件夾下的bin中的startup.bat,啟動 Tomcat.

技術分享

2. 在IE中輸入http://localhost:8080,測試Tomcat啟動成功,歡迎界面:

技術分享

TroubleShooting:

確定服務啟動之後,此頁面打不開,非常可能是安裝Oracle服務,占用了8080port

Tomcat的全部配置文件都在conf目錄中。server.xml是核心配置文件。

打開conf目錄中的server.xml

<Connector port="8080"protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443" />

將8080更改為相應port就可以。此處改為80port。

<Connector port="80"protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443" />

此後啟動時僅僅需輸入80port就可以。

又一次啟動。查看效果。

80port是瀏覽器默認的port。能夠不輸入80。其它port則須要輸入。假設是server,輸入serverIP.

技術分享
3. 點擊Examples,能夠看到JspExamples, Servlets Examples. 進去能夠看到Source及Excute效果. 此外還有JDBCDataSource,能夠看到怎樣連接不同數據庫。


創建和公布JSP應用程序:

1. 在D:\apache-tomcat-7.0.52\webapps文件夾下新建文件夾myHelloWorld。

2. 在此目錄中新建jsp目錄,並編寫HelloWorld.jsp放在此文件裏

<%@ pagecontentType="text/html; charset=UTF-8"language="java"import="java.sql.*" errorPage="" %>

<html>

<head>

<title>[email protected]:\apache-tomcat-7.0.52\webapps\</title>

</head>

<body>

<font size=20>

<%

out.print("HelloWorld.jsp\"@D:\\apache-tomcat-7.0.52\\webapps\"");%>

</font>

</body>

</html>

3. 輸入http://127.0.0.1/myHelloWorld/jsp/HelloWorld.jsp

技術分享

註意:

假設演示樣例不放在Tomcat的webapps文件夾下,則要修改Tomcat的conf文件下的server.xml文件。並重新啟動Tomcat服務讓其生效,假設放在此文件夾下。則不用做修改。


創建和公布Servlet應用程序:

實現思路:首先編寫一個繼承HttpServlet類,編譯該類。然後配置web.xml;最後啟動Tomcat.

1. 在myHelloWorld目錄中新建目錄com。在com下新建目錄myHelloWorld。然後再該目錄下編寫輸出 HelloWorld的Servlet文件HelloWorld.java。代碼例如以下:

packagecom.myHelloWorld;

importjava.io.IOException;

importjava.io.PrintWriter;

importjavax.servlet.ServletException;

importjavax.servlet.http.HttpServlet;

importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;

publicclass HelloWorld extends HttpServlet {

public void doGet(HttpServletRequestrequest,HttpServletResponse response)throws IOException,ServletException {

PrintWriter out = response.getWriter();

out.write("<html>\r\n");

out.write("<head>\r\n");

out.write("<meta http-equiv=\"Content-Type\"content=\"text/html; charset=UTF-8\">\r\n");

out.write("</head>\r\n");

out.write("\r\n");

out.write("<body>\r\n");

out.write("<font size=20>\r\n");

out.print("Servlet to HelloWorld");

out.write("\r\n");

out.write("</font>\r\n");

out.write("</body>\r\n");

out.write("</html>");

}

}

2. 編譯該java文件。並將編譯後的HelloWorld.class放到myHelloWorld\WEB-INF\classes\com\myHelloWorld目錄中

註意

假設在命令行中編譯,則須要將servlet-api.jar加到classpath

3. 在myHelloWorld\WEB-INF目錄下建web.xml,輸入例如以下代碼

<?

xmlversion="1.0" encoding="UTF-8"?

>

<web-appversion="2.4"

xmlns="http://java.sun.com/xml/ns/j2ee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee

http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

<servlet>

<!—設定Servlet-->

<servlet-name>Servlet</servlet-name>

<servlet-class>com.myHelloWorld.HelloWorld</servlet-class>

</servlet>

<servlet-mapping>

<!—設定Servlet的相應關系-->

<servlet-name>Servlet</servlet-name>

<url-pattern>/do</url-pattern>

</servlet-mapping>

</web-app>

代碼說明:凡是後綴為/do的請求都將通過com.myHelloWorld.HelloWorld來進行處理。

4. 啟動Tomcat,並在IE中輸入例如以下連接:http://127.0.0.1/myHelloWorld/do

技術分享

註意:

怎樣顯示有代碼。則非常可能是web.xml裏面的代碼造成的。所以在編碼的時候一定要註意亂碼的問題。


Web應用程序的文件夾結構例如以下圖:

技術分享

Tomcat手工搭建Jsp和Servlet程序