码迷,mamicode.com
首页 > 其他好文 > 详细

第四次过程性考核

时间:2018-12-15 21:02:59      阅读:198      评论:0      收藏:0      [点我收藏+]

标签:accept   manage   导出   server   driver   pre   程序   []   new   

码云:https://gitee.com/yuqian98/fourth_process_assessment/tree/master

考核内容:

使用套接写连接编写一个简单的聊天室程序,客户端主函数放在Client_Main.java文件中,服务器端主函数放在Server_Main.java文件中

要求:

1.客户端从控制台进行输入,并将自己的输出内容和时间保存到数据库的“client_学号”表中
2.服务器端读取到客户端的程序后,从控制台进行输入给客户端以回应,并将客户端的输入内容与服务端的输出内容、时间保存到数据库的表中
3.要求服务器端可以实现同时与多个客户端进行通信,与每一个客户端通信的内容,保存为一个"ip_学号"的表
4.提交文件结果包括:代码,数据库导出为.sql文件

客户端:

 1 import java.io.*;
 2 import java.net.*;
 3 public class Server_Main {
 4   public static void main (String args []) {
 5    String [] answer = {"*********"};
 6    ServerSocket serverForClient_Main = null;
 7    Socket socketOnServer = null;
 8    DataOutputStream out = null;
 9    DataInputStream in = null;
10    try {  serverForClient_Main = new ServerSocket(2010);
11       }
12    catch(IOException el) {
13        System.out.println(el);
14     }
15    try{   System.out.println("等待客户呼叫");
16        socketOnServer = serverForClient_Main.accept();
17        out = new DataOutputStream(socketOnServer.getOutputStream());
18        in = new DataInputStream(socketOnServer.getInputStream());
19        for(int i=0;i<answer.length;i++){
20           String s = in.readUTF();
21           System.out.println("服务器收到客户的提问:"+s);
22           out.writeUTF(answer[i]);
23           Thread.sleep(500);
24         }
25       }
26       catch(Exception e) {
27           System.out.println("客户已断开"+e);
28         }
29       }
30     }

服务器端:

 1 import java.io.*;
 2 import java.net.*;
 3 import java.sql.*;
 4 public class Client_Main{
 5  public static void main (String args[ ]) {
 6   String [] mess={"**************"};
 7   Socket mysocket;
 8   DataInputStream in=null;
 9   DataOutputStream out=null;
10   Connection con =null;
11   Statement sta = null;
12   ResultSet rs;
13   String SQL;
14   try {
15       class.forName("org.apache.derby.jdbc.EmbeddedDriver");
16        }
17    catch(Exception e) { }
18   try {
19        String url = "jdbc:derby:client_学号;create=true";
20        con=DriverManager.getConnection(uri);
21        sta.execute(SQL);
22       }
23    SQL="insert into ip_学号 values"+
24   try{  mysocket = new Socket("127.0.0.1",2010);
25        in = new DataInputStream(mysocket.getInputStream());
26        out = new DataOutputStream(mysocket.getOutputStream());
27        for(int i=0;i<mess.length;i++) {
28            out.writeUTF(mess[i]);
29            String s =in.readUTF();
30            System.out.println("客户收到服务器的回答:"+s);
31            Thread.sleep(500);
32         }
33       }
34       catch(Exception e) {
35          System.out.println("服务器已断开"+e);
36       }
37      }
38     }

总结:对代码的理解度不够,课下应多多练习

第四次过程性考核

标签:accept   manage   导出   server   driver   pre   程序   []   new   

原文地址:https://www.cnblogs.com/yuqian98/p/10124390.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!