Java 简单Socket聊天系统模型(一)

  1. 云栖社区>
  2. 博客列表>
  3. 正文

Java 简单Socket聊天系统模型(一)

一叶飘舟 2011-12-20 16:22:00 浏览607 评论0

摘要:  看过马士兵的教程中有关socket聊天室的视频,我照着敲了一遍代码并不能实现视频中的效果。于是就自己写了一个,总算可以了。不知道有没有更好的方法! package com.lzx.socket; import java.

 看过马士兵的教程中有关socket聊天室的视频,我照着敲了一遍代码并不能实现视频中的效果。于是就自己写了一个,总算可以了。不知道有没有更好的方法!

package com.lzx.socket;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;

public class SocketClient {

	public static void main(String[] args) throws IOException {
		// TODO Auto-generated method stub
		final Socket socket = new Socket("127.0.0.1", 10000);
			
		//回复服务端
		new Thread(){
			public void run() {
				try {
					PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
					BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
					String readline = in.readLine();
					System.out.println(readline);
					while(true){
						out.println(readline);
						System.out.println(" client send: " + readline);
						readline = in.readLine();
						if(readline.equals("bye"))
							break;
					}
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			};
		}.start();
		
		
		new Thread(){
			public void run() {
				//获得客户端发来的数据
				try {
					BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
					while(true){
						System.out.println("Receive from server : " + reader.readLine());
					}
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			};
		}.start();
		
		
	}

}


 

用云栖社区APP,舒服~

【云栖快讯】云栖社区技术交流群汇总,阿里巴巴技术专家及云栖社区专家等你加入互动,老铁,了解一下?  详情请点击

网友评论

一叶飘舟
文章1938篇 | 关注22
关注
阿里云消息服务(Message Service,原MQS)是阿里云商用的消息中间件服务。与传... 查看详情
快速、完全托管的TB/PB级数据仓库解决方案,向用户提供了完善的数据导入方案以及多种经典的分... 查看详情
提供一种性能卓越、稳定、安全、便捷的计算服务,帮助您快速构建处理能力出色的应用,解放计算给服... 查看详情
为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效... 查看详情
阿里中间件云大使

阿里中间件云大使