论文无忧网提供:计算机毕业论文范文|计算机毕业设计|计算机毕业论文
栏目导航 ASP Java Web .NET VB6.0 JAVA VC VF DELPHI PB 计算机网络 计算机科学与技术 PHP 安卓APP 其他 C# 代写论文
当前位置: > 计算机 > JAVA >

A4001JAVAS005QL办公自动化系统(不好)

4.4.5 极光办公自动化系统网络连接

voidjButton7_actionPerformed(ActionEvent e) {       //发送按钮按下时触发的事件

paper51.com

String sendLine = jTextField1.getText();           //得到发送内容 copyright paper51.com

for (int i = 0; i < listIP.size(); i++) {      //与listIP列表里的IP地址建//立连接 copyright paper51.com

    try { http://www.paper51.com

        Socket socket = newSocket(listIP.get(i).toString(), 8080); 内容来自论文无忧网 www.paper51.com

                                                        //与对方的8080端口建立连接 内容来自论文无忧网 www.paper51.com

        out = new PrintWriter(newBufferedWriter(new OutputStreamWriter(

http://www.paper51.com

              socket.getOutputStream())), true);      //建立输出流

内容来自论文无忧网 www.paper51.com

        out.println(sendLine);                         //将发送内容输到输出流 内容来自www.paper51.com

        socket.close();                                //关闭连接 copyright paper51.com

        }

http://www.paper51.com

     catch(Exception ex) { 内容来自论文无忧网 www.paper51.com

       try { paper51.com

         socket.close();                             //如果发生异常也会关闭输出流 paper51.com

       } http://www.paper51.com

       catch (IOException ec) { copyright paper51.com

       }

copyright paper51.com

       ex.printStackTrace();

copyright paper51.com

      }

内容来自www.paper51.com

   }

copyright paper51.com

  }

http://www.paper51.com

以上是客户端的代码。它可以实现:在主界面中,用户点击发送按钮,系统就会根据listIP里的IP地址与服务器建立连接,其中listIP中的地址会在用户点击JTree时生成。连接成功后,会与服务器端建立输出流,以便输出信息。 内容来自www.paper51.com

class ServerThread extends Thread {                   //建立内部类 内容来自论文无忧网 www.paper51.com

     public void run() {                             //内部类所执行的动作

paper51.com

      try { paper51.com

         server = new ServerSocket(ZhuFrame.PORT);   //建立ServerSocket paper51.com

         while (true) {

copyright paper51.com

           socket = server.accept();                //等待客户端的连接 内容来自www.paper51.com

           try { paper51.com

             String userName = "";

copyright paper51.com

             String userIP =socket.getInetAddress().toString().replaceAll("/",""); paper51.com

                                                  //得到连接成功后的客户端的IP地址 http://www.paper51.com

             String selectUser ="select UserName,State from YongHu whereIPAddress='" +userIP + "'";               //根据IP地址查找用户名 copyright paper51.com

             ResultSet r5 = stmR.executeQuery(selectUser); http://www.paper51.com

             while (r5.next()) {

paper51.com

               userName = r5.getString("UserName"); http://www.paper51.com

               if (r5.getInt("State") == 1) { 内容来自论文无忧网 www.paper51.com

               in = new BufferedReader(new InputStreamReader

http://www.paper51.com

                    (socket.getInputStream()));     //建立输入流 http://www.paper51.com

                 String getStr = in.readLine();     //在输出流中读数据

内容来自论文无忧网 www.paper51.com

                 Stringstr=userName + "对你说:" + getStr;

paper51.com

                 jdbTextArea1.append(str.replaceAll(" ","")+"\n");

内容来自论文无忧网 www.paper51.com

                                               //输出读到的内容

内容来自www.paper51.com

                 socket.close();             //关闭Socket

内容来自www.paper51.com

                 if (jTextArea2.getText().equals("请选择成员或部门")) { 内容来自www.paper51.com

                   jTextArea2.append("发送对象:" + userName); http://www.paper51.com

                   list.clear();             //清空用户名列表 copyright paper51.com

                   listIP.clear();           //清空IP地址列表 http://www.paper51.com

                   list.add(userName);        //向用户名列表中加入发信息人的用户名

http://www.paper51.com

                   listIP.add(userIP);        //向IP地址列表中加入IP地址 内容来自www.paper51.com

                 } http://www.paper51.com

               } 内容来自论文无忧网 www.paper51.com

             } http://www.paper51.com

             r5.close();

内容来自论文无忧网 www.paper51.com

           }

copyright paper51.com

           catch (Exception e) {

内容来自www.paper51.com

             e.printStackTrace(); http://www.paper51.com

             socket.close(); 内容来自论文无忧网 www.paper51.com

           }

http://www.paper51.com

         }

paper51.com

       } http://www.paper51.com

       catch (IOException e) { copyright paper51.com

         e.printStackTrace(); http://www.paper51.com

       } 内容来自论文无忧网 www.paper51.com

      } copyright paper51.com

}

copyright paper51.com

以上是服务器端的代码。它是一个线程,当调用accept方法后,进入等待状态,等待客户端程序的连接。当连接建立后会建立与客户机的输入流,以便接收信息。如果接受者处于等待状态那么会把发信息职员的用户名与IP地址分别保存到list与listIP两个表中以便接受者直接回复信息,节省查找用户的时间。 内容来自论文无忧网 www.paper51.com

------分隔线----------------------------
联系方式