• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

深深深深蓝

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

第四次过程性考核

码云: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     }

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

posted on 2018-12-15 19:33  深深深深蓝  阅读(116)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3