服务器端:
import javax.swing.*;
import java.net.*;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
//服务器端
public class MyServer extends JFrame implements ActionListener{
JTextArea jta = null;
JScrollPane jsp = null;
JTextField jtf = null;
JButton jb = null;
JPanel jp = null;
//把信息发送给客户端的信息
PrintWriter pw = null;
//主方法
public static void main(String[] args) {
MyServer ms = new MyServer();
}
//构造器
public MyServer(){
this.setTitle("简易聊天--服务器端");
this.setLocation(500, 100);
this.setResizable(false);
jta = new JTextArea();
jsp = new JScrollPane(jta);
jtf = new JTextField(10);
jb = new JButton("发送");
jb.addActionListener(this);
jp = new JPanel();
jp.add(jtf);
jp.add(jb);
this.add(jsp,BorderLayout.CENTER);
this.add(jp,BorderLayout.SOUTH);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(300, 200);
this.setVisible(true);
try {
//服务器监听
ServerSocket ss = new ServerSocket(9999);
//等待客户端连接
Socket s = ss.accept();
InputStreamReader isr = new InputStreamReader(s.getInputStream());
BufferedReader br = new BufferedReader(isr);
pw = new PrintWriter(s.getOutputStream(),true);
//读取从客户端发来的信息
while(true){
//读取从客户端发来的信息
String info = br.readLine();
jta.append("客户端对服务器说:"+info+"\r\n");
}
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public void actionPerformed(ActionEvent e) {
//如果用户按下发送信息按钮
if(e.getSource()==jb){
//把服务器在jtf写的内容发送给客户端
String info = jtf.getText();
jta.append("服务器对客户端说:"+info+"\r\n");
pw.println(info);
//清空发送框内容
jtf.setText("");
}
}
}import javax