您的位置:首页 > 编程语言 > Java开发

一个 Java 的 Sock…

2013-11-05 14:30 435 查看
一个 HelloWord 级别的 Java Socket 通信的例子。通讯过程:

       
先启动 Server 端,进入一个死循环以便一直监听某端口是否有连接请求。然后运行 Client
端,客户端发出连接请求,服务端监听到这次请求后向客户端发回接受消息,连接建立,启动一个线程去处理这次请求,然后继续死循环监听其他请求。客户端输入字符串后按回车键,向服务器发送数据。服务器读取数据后回复客户端数据。这次请求处理完毕,启动的线程消亡。如果客户端接收到
"OK"
之外的返回数据,会再次发送连接请求并发送数据,服务器会为这次连接再次启动一个线程来进行响应。。。直到当客户端接收到的返回数据为
"OK" 时,客户端退出。

       
服务端源代码:

package com.defonds.socket.begin; 

 

import java.io.BufferedReader; 

import java.io.DataInputStream; 

import java.io.DataOutputStream; 

import java.io.InputStreamReader; 

import java.net.ServerSocket; 

import java.net.Socket; 

 

public class Server { 

    public
static final int PORT =
12345;//监听的端口号    

     

    public
static void main(String[] args)
{   

       
System.out.println("服务器启动...\n");   

       
Server server = new
Server();   

       
server.init();   

   
}   

   

    public void
init()
{   

       
try {   

           
ServerSocket serverSocket = new
ServerSocket(PORT);   

           
while (true)
{   

               
// 一旦有堵塞,
则表示服务器与客户端获得了连接   

               
Socket client =
serverSocket.accept();   

               
//
处理这次连接   

               
new
HandlerThread(client);   

           
}   

       
} catch (Exception e)
{   

           
System.out.println("服务器异常: " +
e.getMessage());   

       
}   

   
}   

   

    private
class HandlerThread implements Runnable
{   

       
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: