<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    經驗不在于年限,在于積累---專注互聯網軟件開發

    把工作當事業做,把項目當作品做!

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      55 Posts :: 0 Stories :: 66 Comments :: 0 Trackbacks
        本文實現了一個簡單的多線程HTTP服務器。接收HTTP GET請求,然后返回簡單的文本信息。
        后期會豐富這個服務器,實現更多的功能,例如:
    1. 支持POST方式提交
    2. 支持二進制的流傳送
    3. 支持線程池處理
    4. 采用NIO非阻塞形式實現
     1package thread;
     2
     3import java.io.BufferedReader;
     4import java.io.IOException;
     5import java.io.InputStream;
     6import java.io.InputStreamReader;
     7import java.io.OutputStream;
     8import java.io.PrintWriter;
     9import java.net.ServerSocket;
    10import java.net.Socket;
    11
    12/**
    13 *  Copyright (C): 2009
    14 *  @author 陳新漢
    15 *  Jun 27, 2009 2:39:39 PM
    16 */

    17
    18/**
    19 * Threaded Network Server
    20 * 這是一個簡單的多線程HTTP服務器
    21 * 采用多線程來處理高并發的用戶請求
    22 */

    23public class HttpServer {
    24    public static void main(String [] args){
    25        HttpServer hs=new HttpServer();
    26        int i=1, port=8888;
    27        Socket received=null;
    28        try{
    29            ServerSocket server=new ServerSocket(port);
    30            while(true){
    31                received=server.accept();
    32                if(received!=null){
    33                    hs.new ProcessThread(i++,received).start();
    34                }

    35            }

    36        }
    catch(IOException e){
    37            e.printStackTrace();
    38        }

    39    }

    40    
    41    class ProcessThread extends Thread
    42    {
    43        private int thread_number=0;
    44        private Socket received=null;
    45        
    46        public ProcessThread(int thread_number, Socket received) {
    47            super();
    48            this.thread_number = thread_number;
    49            this.received = received;
    50        }

    51
    52        public void run() {
    53            System.out.println(""+thread_number+"個處理線程啟動了……");
    54            if(received!=null){
    55                try{
    56                    System.out.println("連接用戶的地址:"+received.getInetAddress().getHostAddress());
    57                    InputStream in=received.getInputStream();
    58                    BufferedReader d= new BufferedReader(new InputStreamReader(in));
    59                    String result=d.readLine();
    60                    while(result!=null && !result.equals("")){
    61                        System.out.println(result);
    62                        result=d.readLine();
    63                    }

    64                    OutputStream out=received.getOutputStream();
    65                    PrintWriter outstream=new PrintWriter(out,true);
    66                    String msg1="<html><head><title></title></head><body><h1>收到!</h1></body></html>";
    67                    outstream.println("HTTP/1.0 200 OK");//返回應答消息,并結束應答
    68                    outstream.println("Content-Type:text/html;charset=GBK");
    69                    outstream.println();// 根據 HTTP 協議, 空行將結束頭信息
    70                    outstream.println(msg1);
    71                    outstream.flush();
    72                    outstream.close();
    73                }
    catch(IOException e){
    74                    e.printStackTrace();
    75                }
    finally{
    76                    try{
    77                        received.close();
    78                    }
    catch(IOException e){
    79                        e.printStackTrace();
    80                    }

    81                }

    82            }

    83        }

    84    }

    85}

    86

        運行這個程序啟動服務器,然后在瀏覽器地址欄輸入:http://localhost:8888/,即可看到返回結果。

        友情提醒:本博文章歡迎轉載,但請注明出處:陳新漢
    posted on 2009-09-15 12:36 hankchen 閱讀(1129) 評論(0)  編輯  收藏 所屬分類: 網絡開發+Mina+Netty
    主站蜘蛛池模板: 精品免费国产一区二区| 亚洲最大激情中文字幕| 成人福利在线观看免费视频| 亚洲人成人一区二区三区| 2015日韩永久免费视频播放| 亚洲欧美日韩中文字幕一区二区三区| 波多野结衣视频在线免费观看| 国产婷婷成人久久Av免费高清| 亚洲国产亚洲综合在线尤物| 五月婷婷亚洲综合| 99久久国产免费中文无字幕| 亚洲av日韩综合一区二区三区| 亚洲成A人片777777| 日韩在线视频免费看| 国产一区二区三区免费| 亚洲AV一区二区三区四区| 国产av无码专区亚洲av桃花庵| 女人与禽交视频免费看| a在线观看免费视频| 国产精品亚洲一区二区三区久久| 亚洲电影一区二区| 免费又黄又硬又爽大片| 国产无人区码卡二卡三卡免费| 中文字幕看片在线a免费| 亚洲午夜福利在线视频| 亚洲色欲www综合网| 中文字幕亚洲不卡在线亚瑟| 毛片免费视频在线观看| 免费人成视频在线观看网站| 色婷婷综合缴情综免费观看 | 四虎必出精品亚洲高清| 国产亚洲无线码一区二区| 免费国产在线观看老王影院| av无码国产在线看免费网站| 国产成年无码久久久免费| 日韩电影免费在线观看网址 | 国产一级高清视频免费看| 曰曰鲁夜夜免费播放视频| 精品免费视在线观看| www成人免费观看网站| 亚洲国产精品无码第一区二区三区|