java中tcp多人对话的一个tcp例子
来源:互联网 发布:台湾有希望统一 知乎 编辑:程序博客网 时间:2024/05/19 04:28
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class MultipartCommunicationTcpTest implements Runnable{
private Socket socket = null;
private ServerSocket serverSocket = null;
public static void main(String[] args) {
MultipartCommunicationTcpTest communicationTcpTest = new MultipartCommunicationTcpTest();
communicationTcpTest.communicate();
}
public void communicate()
{
try {
serverSocket = new ServerSocket(8001);
while(true)
{
//这是与一个客户端开启连接,这里不断的循环,表示可以与很多个客户端连接
socket = serverSocket.accept();
//与每个客户端连接的回话都是在一个单独的线程中进行,如果不是在一个单独的线程进行,如果有一个与客户端的回话中断,
//那么其他人就不能进行回话了,因为只有一个线程
new Thread(this).start();
}
} catch (Exception e) {
if(socket.isClosed())
{
}else
{
e.printStackTrace();
}
}
}
public void run() {
try {
BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
//第二个参数表示当我们用println打印数据的时候,就会自动调用flush这个方法,如果设置为false,就算是用println也不会自动刷新,默认是false
PrintWriter printWriter = new PrintWriter(new OutputStreamWriter(socket.getOutputStream()), true);
//这里的循环表示与一个客户端进行不断的来回通信
while(true)
{
String receiveStr = br.readLine();
//当输入的是quit的时候,就结束这个回话
if(receiveStr.equals("quit"))
{
br.close();
printWriter.close();
socket.close();
break;
}
System.out.println(receiveStr);
printWriter.println(receiveStr + "------>" + new StringBuffer(receiveStr).reverse());
}
} catch (Exception e) {
if(socket.isClosed())
{
}else
{
e.printStackTrace();
}
}
}
}
- java中tcp多人对话的一个tcp例子
- java中给出一个多线程TCP的ServerSocket例子?
- 一个java的TCP通信例子
- java中tcp小例子
- java中请给出TCP的ServerSocket通信的例子?
- 一个简单的tcp filter的例子
- 一个TCP/IP转发的例子
- 一个TCP/IP转发的例子
- TCP编程的一个小例子
- TCP编程的一个小例子
- vxworks中TCP例子
- Java TCP/IP Socket 编程 笔记—TCP的例子
- Java TCP入门例子
- java tcp简单例子
- boost中asio的tcp::iostream例子
- ## Java TCP 通信的简单例子 ##
- java的用tcp协议写的一个通信的例子
- JAVA之TCP网络通信一个小例子
- JSON 日期处理
- Python中使用正则表达式
- (莱昂氏unix源代码分析导读-40)inode“指向文件的内容”的读写
- Python运行执行模式
- Python 程序员的进化
- java中tcp多人对话的一个tcp例子
- android开发中WebView的使用(附完整程序)
- ADO.Net连接池和连接字符串剖析
- Struts2实例-通过URL执行Action类中的非默认方法
- Thinking Web
- 印象Clang
- [Hadoop]Hadoop+HBase 伪分布式安装配置
- 禁忌搜索算法解决VRP 学习攻略
- mysql auto_increment 初始值从0开始