標籤:web伺服器 http伺服器 apache tomcat servlet
Java web基礎總結三之—— java 網頁伺服器一.什麼是java web伺服器
首先來看一下什麼是web伺服器,它一般指網站伺服器,是指一個再互連網一個主機上的一個程式。它可以解析用戶端發送來的遵循http協議的請求,並且經過邏輯業務處理後,以http協議向瀏覽器等Web用戶端提供文檔。
互連網上供外界訪問的Web資源可以分為兩種:一個是靜態web資源(如html 頁面),指web頁面中供人們瀏覽的資料始終是不變。另一個動態web資源,指web頁面中供人們瀏覽的資料是由程式動態產生的,不同的時間訪問web頁面看到的內容各不相同,現在的web頁面基本都是動態。常用動態web資源開發技術:JSP/Servlet、ASP、PHP等。
一般我們把動態web頁面的開發稱為javaweb技術,所以通常所說的java web伺服器也可以認為是遵循全部JSP/Servlet規範的容器。所謂的容器就是它實現了java定義的JSP/Servlet的介面規範,可以對JSP/Servlet的建立,運行,銷毀等整個生命週期進行管理。
servlet 容器的實現是非常複雜的。但是主要還是實現了三個過程:首先建立一個實現了javax.servlet.ServletRequest 介面或javax.servlet.http.ServletRequest 介面的 Request 對象,並用請求參數、要求標頭(headers)、cookies、查詢字串、uri 等資訊填充該 Request對象;緊接著,建立一個實現了javax.servlet.ServletResponse或javax.servlet.http.ServletResponse 介面的 Response 對象;調用相應的servlet 的服務方法,將先前建立的 request 對象和 response 對象作為參數傳入。接收請求的 servlet 從 request 對象中讀取資訊,並將返回值寫入到 response 對象。然後把這個response 對象轉換成http報文傳到用戶端。
二.自己實現一個最簡單的java web伺服器
由於http協議是基於tcp/ip協議之上的,所以只需要使用ServerSocket和Socket就可以實現一個非常簡單的http伺服器。下面是一個類似於hello world的最簡單,最簡陋的http伺服器。沒有對請求進行處理,對於所有的用戶端請求都返回hello world。
package com.c;import java.io.IOException;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.Socket;public class HTTPServer { public static void main(String[] args) { try { ServerSocket serverSocket=new ServerSocket(8080); while(true){ Socket socket=serverSocket.accept(); System.out.println("-------"); PrintWriter printWriter=new PrintWriter(socket.getOutputStream()); //封裝http響應報文 printWriter.println("HTTP/1.1 200 OK"); printWriter.println("Content-type:text/html"); printWriter.println(); //發送hello world printWriter.println("<h1>hello world</h1>"); printWriter.flush(); socket.close(); } } catch (IOException e) { e.printStackTrace(); } }}
三.常見的幾個java web伺服器 1. WebLogic
WebLogic是BEA公司的產品,是目前應用最廣泛的Web伺服器,支援J2EE規範,當然是商業的,所以需要付費。
2. WebSphere
它是IBM公司開發的,支援J2EE規範。一般用於保險,銀行等等核心交易系統。跟錢有關的業務系統很多都是用的WebSphere Application Server。所以效能高,同樣的也不是免費的。
3. Apache
Apache開源組織有一個很優秀的開源web伺服器:Tomcat,在小型的應用系統使用比較廣泛,該伺服器支援全部JSP以及Servlet規範,現在有很多的商業公司也會在生產環境使用它。
四.Tomcat伺服器簡介1. tomcat 的安裝
它的是:http://tomcat.apache.org/.下載時,tar.gz檔案是Linux作業系統下的安裝版本。zip檔案是Windows系統下的壓縮版本。對於windows版本,下載以後,直接解壓,雙擊 bin 目錄下的 startup.bat 檔案,或者在命令列下使用命令啟動。輸入http://localhost:8080/ 出現一個三條腿的湯姆貓就代表安裝成功了。
2. Tomcat 的目錄階層:
我們的web項目都會部署到webapps這個目錄下。然後tomcat就會自動進行管理。這個目錄下面可以同時部署多重專案,但是一般正式的生產環境都會在一個tomcat執行個體中只部署一個項目。
Java web基礎總結三之—— java 網頁伺服器