/**//*
*服务端
*/
package edu.jlu.fuliang;
import java.io.*;
import java.net.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.*;
public class Server extends JFrame implements Runnable {
private ServerSocket server;
private Socket connection;
private OutputStream output;
private InputStream input;
private Thread outThread;
private JTextArea display;
private JTextField text1;
private JButton startButton;
public static void main(String args[]) {
Server s = new Server();
s.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public Server() {
super("Server");
startButton = new JButton("Start the server");
text1 = new JTextField(20);
display = new JTextArea(7, 30);
display.setEditable(false);
Container container = getContentPane();
container.setLayout(new BorderLayout());
container.add(startButton,BorderLayout.NORTH);
container.add(new JScrollPane(display),BorderLayout.CENTER);
container.add(text1,BorderLayout.SOUTH);
/**//*
* 给开始按钮添加监听器。
*/
startButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
display.setText("启动服务器 ");
startButton.setEnabled(false);
try {
//端口设为5000,最大连接请求为100个
server = new ServerSocket(5000, 100);
connection = server.accept();
output = connection.getOutputStream();
input = connection.getInputStream();
output.write("连接成功! ".getBytes());
outThread = new Thread(Server.this);
outThread.start();
} catch (IOException ee) {
}
}
});
/**//*
/*给文本域添加键盘监听器,按回车发送信息。
*/
text1.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent ke) {
if(ke.getKeyCode() == KeyEvent.VK_ENTER){
byte writeBytes[] = new byte[50];
String s = "Server: " + text1.getText() + "";
text1.set