tserver.java

来自「一共两个文件」· Java 代码 · 共 76 行

JAVA
76
字号
import java.awt.*;import javax.swing.*;import java.awt.event.*;import java.net.*;import java.io.*;public class TServer extends JFrame implements Runnable,ActionListener{	JTextField info = new JTextField(10);	List list = new List(20);	InputStream is;	OutputStream os;	BufferedOutputStream bos;	BufferedInputStream bis;	public TServer()	{		super("TCP服务器端");		setSize(300,400);				JPanel p = new JPanel();		JLabel l = new JLabel("消息");		p.add(l);		p.add(info);		add(p,"South");		add(list,"Center"); 	}	public void init(Socket s)	{		try{			is = s.getInputStream();			os = s.getOutputStream();			bos = new BufferedOutputStream(os);			bis = new BufferedInputStream(is);						info.addActionListener(this);			new Thread(this).start();		}catch(Exception e){}		}	public void run()	{		try{			while(true)			{				byte [] b = new byte[1024];				int i = bis.read(b);				list.add(new String(b,0,i),0);			}			}catch(Exception e){}	}	public void actionPerformed(ActionEvent e)	{		try{			byte [] b = info.getText().getBytes();			bos.write(b);			bos.flush();			info.setText("");		}catch(Exception ec){}	}	public static void main(String [] args)	{		try{			ServerSocket ss = new ServerSocket(8866);			System.out.println("等待客户连接...");			while(true)			{				Socket sk = ss.accept();				TServer ts = new TServer();				ts.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);				ts.setVisible(true);				ts.init(sk);			}		}catch(Exception e){}	}}

⌨️ 快捷键说明

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