1、java Socket編程實現的最簡單的多線程Web伺服器
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class Test {
public static void main(String[] args) throws Exception {
ServerSocket server = new ServerSocket(888);
while(true) {
Socket s = server.accept();
Processer p = new Processer(s);
Thread t = new Thread(p);
t.start();
}
}
}
class Processer implements Runnable {
private Socket socket;
public Processer(Socket s) {
// TODO Auto-generated constructor stub
this.socket = s;
}
@Override
public void run() {
try {
PrintWriter out=new PrintWriter(socket.getOutputStream(),true);
out.println("HTTP/1.0 200 OK");
out.println("Content-Type:text/html;charset=utf-8");
out.println();
out.println("<h1> Web伺服器測試成功!</h1>");
out.close();
} catch(Exception ex) {
ex.printStackTrace();
} finally {
try {
socket.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
2、怎麼用java創建一個web伺服器
這個問題有點歧義,我分兩種情況:
你想寫一個web服務,需要一個web的服務容器,那麼選用tomcat或者jetty都可以,網上有資料,很好弄。
你想用java寫一個web容器。就跟tomcat一樣; 那麼只要你需要學習HTTP, java servlet等基礎知識,按照這些標准去寫就可以,可以看看tomcat的源碼
3、開發JAVA WEB程序常用的伺服器
Tomcat 介紹 如今,基於Web的應用越來越多,傳統的Html已經滿足不了如今的需求。我們需要一個互動式的Web,於是便誕生了各種Web語言。
如Asp,Jsp,Php等。當然,這些語言與傳統的語言有著密切的聯系,如Php基於C和C++語言,Jsp基於Java語言。Tomcat即是一個Jsp和Servlet
的運行平台。
Tomcat是一個免費的開源的Serlvet容器,它是Apache基金會的Jakarta項目中的一個核心項目,由Apache,Sun和其它一些公司及個人共同開發
而成。由於有了Sun的參與和支持,最新的Servlet和Jsp規范總能在Tomcat中得到體現。Tomcat被JavaWorld雜志的編輯選為2001年度最具創新
的java產品,可見其在業界的地位。
Tomcat最新版本是4.0x.4.0x與3.x的架構不同,而是重新設計的。Tomcat4.0x中採用了新的Servlet容器:Catalina,完整的實現了Servlet2.3
和Jsp1.2規范。Tomcat提供了各種平台的版本供下載,可以從http://jakarta.apache.org上下載其源代碼版或者二進製版。由於Java的跨平台
特性,基於Java的Tomcat也具有跨平台性。
與傳統的桌面應用程序不同,Tomcat中的應用程序是一個WAR(WebArchive)文件。WAR是Sun提出的一種Web應用程序格式,與JAR類似,也是許
多文件的一個壓縮包。這個包中的文件按一定目錄結構來組織:通常其根目錄下包含有Html和Jsp文件或者包含這兩種文件的目錄,另外還會有
一個WEB-INF目錄,這個目錄很重要。通常在WEB-INF目錄下有一個web.xml文件和一個classes目錄,web.xml是這個應用的配置文件,而
classes目錄下則包含編譯好的Servlet類和Jsp或Servlet所依賴的其它類(如JavaBean)。通常這些所依賴的類也可以打包成JAR放到WEB-INF
下的lib目錄下,當然也可以放到系統的CLASSPATH中,但那樣移植和管理起來不方便。
在Tomcat中,應用程序的部署很簡單,你只需將你的WAR放到Tomcat的webapp目錄下,Tomcat會自動檢測到這個文件,並將其解壓。你在瀏覽器
中訪問這個應用的Jsp時,通常第一次會很慢,因為Tomcat要將Jsp轉化為Servlet文件,然後編譯。編譯以後,訪問將會很快。另外Tomcat也提
供了一個應用:manager,訪問這個應用需要用戶名和密碼,用戶名和密碼存儲在一個xml文件中。通過這個應用,輔助於Ftp,你可以在遠程通
過Web部署和撤銷應用。當然本地也可以。
Tomcat不僅僅是一個Servlet容器,它也具有傳統的Web伺服器的功能:處理Html頁面。但是與Apache相比,它的處理靜態Html的能力就不如
Apache.我們可以將Tomcat和Apache集成到一塊,讓Apache處理靜態Html,而Tomcat處理Jsp和Servlet.這種集成只需要修改一下Apache和
Tomcat的配置文件即可。
另外,Tomcat提供Realm支持。Realm類似於Unix裡面的group.在Unix中,一個group對應著系統的一定資源,某個group不能訪問不屬於它的資
源。Tomcat用Realm來對不同的應用(類似系統資源)賦給不同的用戶(類似group)。沒有許可權的用戶則不能訪問這個應用。Tomcat提供三種
Realm,1:JDBCRealm,這個Realm將用戶信息存在資料庫里,通過JDBC獲得用戶信息來進行驗證。2:JNDIRealm,用戶信息存在基於LDAP的服
務器里,通過JNDI獲取用戶信息。3:MemoryRealm,用戶信息存在一個xml文件裡面,上面講的manager應用驗證用戶時即使用此種Realm.通過
Realm我們可以方便地對訪問某個應用的客戶進行驗證。
在Tomcat4中,你還可以利用Servlet2.3提供的事件監聽器功能,來對你的應用或者Session實行監聽。Tomcat也提供其它的一些特徵,如與SSL
集成到一塊,實現安全傳輸。還有Tomcat也提供JNDI支持,這與那些J2EE應用伺服器提供的是一致的。說到這里我們要介紹一下通常所說的應
用伺服器(如WebLogic)與Tomcat有何區別。應用伺服器提供更多的J2EE特徵,如EJB,JMS,JAAS等,同時也支持Jsp和Servlet.而Tomcat則功
能沒有那麼強大,它不提供EJB等支持。但如果與JBoss(一個開源的應用伺服器)集成到一塊,則可以實現J2EE的全部功能。既然應用伺服器
具有Tomcat的功能,那麼Tomcat有沒有存在的必要呢?事實上,我們的很多中小應用不需要採用EJB等技術,Jsp和Servlet已經足夠,這時如果
用應用伺服器就有些浪費了。而Tomcat短小精悍,配置方便,能滿足我們的需求,這種情況下我們自然會選擇Tomcat.
基於Tomcat的開發其實主要是Jsp和Servlet的開發,開發Jsp和Servlet非常簡單,你可以用普通的文本編輯器或者IDE,然後將其打包成WAR即
可。我們這里要提到另外一個工具Ant,Ant也是Jakarta中的一個子項目,它所實現的功能類似於Unix中的make.你需要寫一個build.xml文件,
然後運行Ant就可以完成xml文件中定義的工作,這個工具對於一個大的應用來說非常好,我們只需在xml中寫很少的東西就可以將其編譯並打包
成WAR.事實上,在很多應用伺服器的發布中都包含了Ant.另外,在Jsp1.2中,可以利用標簽庫實現Java代碼與Html文件的分離,使Jsp的維護更
方便。
Tomcat也可以與其它一些軟體集成起來實現更多的功能。如與上面提到的JBoss集成起來開發EJB,與Cocoon(Apache的另外一個項目)集成起
來開發基於Xml的應用,與OpenJMS
集成起來開發JMS應用,除了我們提到的這幾種,可以與Tomcat集成的軟體還有很多。
Tomcat確實是一個很好的工具,不僅僅因為其免費,功能強大,更因為其開放性。如今,開源軟體越來越收到人們的重視,Linux就是一個成功
的典型。
4、用JAVA寫一個簡單的web伺服器, 怎麼生成響應報文呢?
你網路下 NanoHTTPD.java,這個是用java寫的一個簡單的web伺服器
5、java的web伺服器,除了用tomcat還有哪些輕量級的,好用的
jetty,resin,jboss(裡面跑的還是tomcat)
其實tomcat就是行業標准了。
6、做web伺服器的一些簡單的代碼如何寫?(用Java裡面的面向對象的知識和sql的東西寫)
用java寫一個頁向對像的web 伺服器,得藉助工具!
不然估計把你累吐血了!
想用java做一個web 服務版器你得懂這樣的幾個方權面!
xml,servlet,jsp,javabean用這些應該做一具小型的差不多了!
首先,jsp屬性界面類,響應客戶端的請求發送給servlet!
servlet控制類,sevlet接受客戶端的請求做相應的處理!
比如,調用javabean的資料庫連接的類!
做完一系列操作再由servlet轉發到jsp,顯示客戶所需要的數據!
7、如何用 Java實現自己的Web伺服器
java socket編程是伺服器的核心知識,推薦資料 java網路編程
8、JAVA實現簡單的WEB伺服器
一般都是在TOMCAT上面做的。
9、如何用Java實現Web伺服器
如何用Java實現Web伺服器 一、HTTP協議的作用原理
WWW是以Internet作為傳輸媒介的一個應用系統,WWW網上最基本的傳輸單位是Web網頁。WWW的工作基於客戶機/伺服器計算模型,由Web 瀏覽器(客戶機)和Web伺服器(伺服器)構成,兩者之間採用超文本傳送協議(HTTP)進行通信。HTTP協議是基於TCP/IP協議之上的協議,是Web瀏覽器和Web伺服器之間的應用層協議,是通用的、無狀態的、面向對象的協議。HTTP協議的作用原理包括四個步驟:
(1) 連接:Web瀏覽器與Web伺服器建立連接,打開一個稱為socket(套接字)的虛擬文件,此文件的建立標志著連接建立成功。
(2) 請求:Web瀏覽器通過socket向Web伺服器提交請求。HTTP的請求一般是GET或POST命令(POST用於FORM參數的傳遞)。GET命令的格式為:
GET 路徑/文件名 HTTP/1.0
文件名指出所訪問的文件,HTTP/1.0指出Web瀏覽器使用的HTTP版本。
(3) 應答:Web瀏覽器提交請求後,通過HTTP協議傳送給Web伺服器。Web伺服器接到後,進行事務處理,處理結果又通過HTTP傳回給Web瀏覽器,從而在Web瀏覽器上顯示出所請求的頁面。