Apache Tomcat 是 Apache 軟體基金會下之 Jakarta 項目專案所開發出來的免費開源軟體,內含有 HTTP 伺服器,因此也可以被視作為一個單獨的網頁伺服器;另外主要特色為支援 Java Servlet 及 JavaServer Page (JSP),並且透過 XML 格式之設定檔來管理及控制網頁路徑。
---
Step 0. 安裝 Java JDK
可以參考本站文章「設定指令優先權(Java 安裝為例)」,本例使用版本:
~$ java -version java version "1.8.0_45" Java(TM) SE Runtime Environment (build 1.8.0_45-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
---
Step 1. 下載檔案
至官方下載 Apache Tomcat,
本文使用版本為 apache-tomcat-8.0.30-src.tar.gz。
---
Step 2. 解壓縮
於 Linux 系統環境下,通常習慣將第三方協力軟體放置到 “/opt“ 目錄下(需 ROOT)。
~$ sudo tar xfva apache-tomcat-8.0.30-src.tar.gz -C /opt
---
Step 3. 啟動 apache-tomcat 服務
至解壓縮目錄內之 “bin“ 目錄下執行運作服務 Shell Scrip 檔。
~$sudo sh /opt/apache-tomcat-8.0.30/bin/startup.sh
---
Step 4. 測試網頁
開啟瀏覽器鍵入網址 “http://localhost:8080/“,若有正確啟動服務會看到下圖畫面:
---
Step 5. 建立專案
使用 Apache Tomcat 必須遵守其檔案目錄配置的規範,
以路徑 /opt/apache-tomcat-8.0.30/webapps 做為網頁之根目錄 (Root) 開始建立專案目錄。
---
Step 6. 寫 JSP 測試:/opt/apache-tomcat-8.0.30/webapps/Test/hello.jsp
<%@ page contentType="text/html;charset=UTF-8" %> <html> <head> <title>Hello</title><br> </head> <body> <h3>Input Name</h3> <form action="/TestApp/Hello" method="get"> 請輸入姓名: <input type="text" name="UserID" /> <input type="submit" value="Send" /> </form> </body> </html>
---
Step 7-1. 寫 Servlet 測試:/opt/apache-tomcat-8.0.30/webapps/Test/WEB-INF/src/HelloServlet.java
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 下面兩行讓中文字能正確顯示 response.setContentType("text/html;charset=UTF-8"); request.setCharacterEncoding("UTF-8"); PrintWriter out = response.getWriter(); out.println("<HTML>"); out.println("<BODY>"); out.println("<p>Hello! 這是我的第一支 Java servlet 程式。</p>"); out.println("</BODY>"); out.println("</HTML>"); } }
Step 7-2. 以指令編譯成 .class 檔:/opt/apache-tomcat-8.0.30/webapps/Test/WEB-INF/classes/HelloServlet.class
cd /opt/apache-tomcat-8.0.30/webapps/Test/WEB-INF/src javac *.java -d ../classes/
Step 7-3. 設定 web.xml:/opt/apache-tomcat-8.0.30/webapps/Test/WEB-INF/web.xml
<servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/HelloServlet</url-pattern> </servlet-mapping>
---
Step 8-1. 測試 jsp 網址:
http://localhost:8080/Test/hello.jsp
Step 8-2. 測試 servlet 網址:
http://localhost:8080/Test/hello
沒有留言:
張貼留言