解决问题的方法竟然是: 把BufferWriter换成PrintWrite就可以了,哇靠~ 这是怎么回事??难道BufferWriter和BufferReader有冲突?在BufferReader进行readLine()时,BufferWriter无法flush()和close()?怪怪 程序改成这样就没问题了,我的数据同步平台也可以运作了。 public class ServerThread extends Thread {     private int port;     public ServerThread(int port) {         this.port = port;     }     private boolean stop = false;     public void run() {         try {             ServerSocket server = new ServerSocket(port);             while (!stop) {                 Socket client = server.accept();                 BufferedReader read = new BufferedReader(new InputStreamReader(client.getInputStream()));                 PrintWriter streamWriter = new PrintWriter(client.getOutputStream());//关键是这里                 System.out.println("发送欢迎信息");                 streamWriter.println("欢迎xx");                 streamWriter.flush();//如果用BufferWriter这句话就不起作用,也发不出去,所以客户端也无法收到                 String lineStr = read.readLine();                 if ("开始".equals(lineStr)) {                     System.out.println("开始接受数据!");                     while (true) {                         lineStr = read.readLine();                         if ("结束".equals(lineStr)) {                             break;                         } else {                             System.out.println("数据是" + lineStr);                         }                     }                 }                 streamWriter.close();                 read.close();                 client.close();             }         } catch (IOException ex) {             ex.printStackTrace();         }     }     public static void main(String[] args) {         Thread server = new ServerThread(10020);         server.start();     }     public boolean isStop() {         return stop;     }     public void setStop(boolean stop) {         this.stop = stop;     } }   现在还遇到一个问题就是用java的jdbc在数据库生成trigger,竟然会报语法出错,不过还是在数据库中生成了trigger,而手工的用PL/SQL工具一运行就好了,这是怎么回事,怪~ 具体是这样的: stmt.executeUpdate(String triggerSql); 数据库schema中生成了trigger,但是报错状态(不是Disable状态) 然后用PL/SQL工具运行这个trigger,竟然没有任何问题 
 根据出错的提示信息我们发现好像是jdbc的语法不支持比较复杂的SQL,那我们如何用程序生成trigger啊??  |