yylchatserver.java

来自「使用java实现的基于tcp通信协议的一个聊天程序的服务端」· Java 代码 · 共 131 行

JAVA
131
字号
import java.io.*; 
import java.awt.*; 
import java.awt.event.*; 
import java.net.*; 

public class YylChatServer extends Frame 
{ 
TextField tf=new TextField(20); 
TextArea ta=new TextArea(); 


ServerSocket server;
Socket client; 
InputStream in; 
BufferedReader br; 
OutputStream out; 
BufferedWriter bw; 
boolean listening = true;
public YylChatServer() 
{ 
super("服务端,管理员杨叶龙"); 

add("North",tf); 
add("Center",ta); 
setSize(400,400); 
show();
 



Init();//初始化 
lisn();//启动监听 
} 
public void Init() 
{ 
try 
{ 
server=new ServerSocket(10015,10); 
} 
catch(IOException ie) 
{ 
System.out.println("无法在8189端口监听"); 
ie.printStackTrace(); 
} 
} 
public void lisn() 
{ 
try 
{ 
while(listening) 
new Thread(new dialogserve(server.accept())).start(); 
} 
catch(IOException ie) 
{ie.printStackTrace();} 
 
}
public static void main(String args[]) 
{ 
new YylChatServer(); 
} 
 
}
class dialogserve implements Runnable{

	ServerSocket server;
	Socket client; 
	InputStream in; 
	BufferedReader br; 
	OutputStream out; 
	BufferedWriter bw; 
	boolean listening = true;
	private Socket s; 
	TextField tf=new TextField(20); 
	TextArea ta=new TextArea(); 
	private String rev,temp; 
	private byte b[]; 
	private int len; 
	
	
	public dialogserve(Socket ss) 
	{ 
	s=ss; 
	b=new byte[1024]; 
	try 
	{ 
	in=s.getInputStream(); 
	}catch(IOException ie) 
	{ 
	ie.printStackTrace(); 
	} 
	rev=""; 
	} 
	
public void run(){	
try 
{ 
server=new ServerSocket(8189,10); 
client=server.accept(); 
ta.append("Client host:"+client.getInetAddress().getHostName()+"\n\n"); 
in=client.getInputStream(); 
out=client.getOutputStream(); 
} 
catch(IOException ioe){} 
while(true) 
{ 
try 
{ 
byte[] buf=new byte[200]; 
in.read(buf); 
String str=new String(buf); 
ta.append("客户端 说:"+str); 
ta.append("\n"); 
} 
catch(IOException e){} 
} 
} 
public boolean action(Event e,Object o) 
{ 
try 
{ 
String str=tf.getText(); 
byte[] buf=str.getBytes(); 
tf.setText(null); 
out.write(buf); 
ta.append("杨叶龙 说:"+str); 
ta.append("\n"); 
} 
catch(IOException ioe){} 
return true; 
}} 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?