java tcp连接_Java的TCP网络编程

packagesocket;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStream;importjava.io.InputStreamReader;importjava.net.ServerSocket;importjava.net.Socket;/*** 聊天室服务端

*@author小明

**/

public classServer {/*** 运行在服务端的ServerSocket主要有两个作用:

* 1:向系统申请服务端口,客户端就是通过这个端口与服务端建立连接的。

* 2:监听服务端口,一旦客户端与服务端建立连接,就会

* 自动创建一个Socket,并通过该Socket与建立连接的

* 客户端进行交互。

**/

privateServerSocket server;publicServer()

{try{/*** 实例化ServerSocket的同时要指定向系统申请的服务端口。注意,该端口

* 不能与当前系统其它应用程序申请的端口号一致,

* 否则会抛出端口被占用的异常。*/System.out.println("正在启动服务端...");

server= new ServerSocket(8088);

System.out.println("服务端启动完毕!");

}catch(Exception e){

}

}public voidstart()

{try{

System.out.println("等待客户端连接");

Socket socket=server.accept();/*** 准备接受客户端连接

*

* 这是一个阻塞方法。

*一旦调用accpet()方法,服务端阻塞在这里,等着客户端连接了。

*这时当我们启动客户端时,客户端实例化socket,通过IP找到应用程序。

*这时accpet()马上就会有反应。accpet()方法执行完就返回一个socket。

*通过这个socket就可以与刚建立连接的这个客户端进行通讯了。

*客户端创建一个socket,服务端通过accept()接收一个socket。

*这时候就可以进行沟通了。

* 需要处理异常。*/InputStream in=socket.getInputStream();

InputStreamReader isr= newInputStreamReader(in);

BufferedReader br= newBufferedReader(isr);

String message=br.readLine();

System.out.println("客户端说:" +message);

System.out.println("一个客户端连接了");

}catch(IOException e) {//TODO Auto-generated catch block

e.printStackTrace();

}

}public static voidmain(String[] args) {

Server server= newServer();

server.start();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值