能不能帮我看一下下面两端小代码服务端怎么收不到数据啊?

package chat;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class Client extends JFrame implements ActionListener {
Socket socket = null;
PrintWriter pw = null;
JTextField tf = new JTextField(20);
JTextArea ta = new JTextArea();

public Client() {
    try {
        socket = new Socket("localhost", 8088);
        try {
            pw = new PrintWriter(new OutputStreamWriter(
                    socket.getOutputStream()));
        } catch (IOException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        JLabel label = new JLabel("请输入聊天内容:");
        tf.addActionListener(this);
        this.setLayout(null);
        label.setBounds(10, 10, 100, 50);
        tf.setBounds(120, 25, 200, 20);
        ta.setBounds(0, 50, 400, 300);
        add(label);
        add(tf);
        add(ta);
        this.setSize(400, 300);
        this.setLocationRelativeTo(null);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } finally {
        if (socket != null) {
            try {
                socket.close();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
}

public static void main(String[] args) {
    Client client = new Client();
}

public void actionPerformed(ActionEvent e) {
    String str = tf.getText();
    ta.append("客户端说:" + str + "\n");
    tf.setText("");
    System.out.println(str);
    pw.println(str);
    pw.flush();
}

}

package chat;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class Server extends JFrame implements ActionListener {
ServerSocket serversocket = null;

public Server() {
    try {
        JLabel label = new JLabel("请输入聊天内容:");
        JTextField tf = new JTextField(20);
        tf.addActionListener(this);
        JTextArea ta = new JTextArea();
        this.setLayout(null);
        label.setBounds(10, 10, 100, 50);
        tf.setBounds(120, 25, 200, 20);
        ta.setBounds(0, 50, 400, 300);
        add(label);
        add(tf);
        add(ta);
        this.setSize(400, 300);
        this.setLocationRelativeTo(null);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);
        serversocket = new ServerSocket(8088);
        System.out.println("等待客户端连接:");
        Socket socket = serversocket.accept();
        System.out.println("客户端已连接上");
        BufferedReader br = new BufferedReader(new InputStreamReader(
                socket.getInputStream()));
        String line = null;
        while ((line = br.readLine()) != null) {
            System.out.println(line);
            ta.append("客户端说:" + line + "\n");
        }
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

public static void main(String[] args) {
    Server server = new Server();
}

@Override
public void actionPerformed(ActionEvent e) {

}

}

http://download.csdn.net/detail/yhf880219/1562325

参考一下这个,检查一下代码:http://bbs.csdn.net/topics/330162464