JAVA基础-聊天室小项目
Posted 不愿透露姓名的王建森
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA基础-聊天室小项目相关的知识,希望对你有一定的参考价值。
package Task;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.SocketException;
import java.util.Scanner;
public class ServerTask implements Runnable{
Socket socket;
//实现绑定
public ServerTask(Socket socket) {
// TODO Auto-generated constructor stub
this.socket = socket;
}
@Override
public void run() {
// TODO Auto-generated method stub
System.out.println( socket.getRemoteSocketAddress()+"进入了聊天室!" );
//输入流
try {
//字节流-》字符流-》缓冲流
BufferedReader bReader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
/**
* 客户端信息不为空,那么服务器端可以回应
*/
String msg = bReader.readLine();
while ( msg != null) {
System.out.println(socket.getRemoteSocketAddress() + "说:" + msg);
//服务器端回应
//字节流转字符流
PrintWriter pWriter = new PrintWriter(socket.getOutputStream(),true );
Scanner scanner = new Scanner(System.in);
pWriter.println("服务器对"+socket.getRemoteSocketAddress()+"说:"+scanner.nextLine());
msg = bReader.readLine();
}
}catch (SocketException e) {
System.out.println( socket.getRemoteSocketAddress() + "退出聊天室" );
}catch (Exception e) {
// TODO: handle exception
}
}
}
以上是关于JAVA基础-聊天室小项目的主要内容,如果未能解决你的问题,请参考以下文章
java在线聊天项目 实现基本聊天功能后补充的其他功能详细需求分析 及所需要掌握的Java知识基础