zoukankan      html  css  js  c++  java
  • 团队项目(二)

      团队项目是建立局域网聊天室,我们打算用socket通信实现消息传递。考虑网络方面java有很多封装好的类库,使用十分方便,我们团队初步打算使用java实现。

      目前我和王以正同学完成代码。目前我起了一个头,完成了客户端内核的基本框架。代码如下:

      

     1 public class Client {
     2 
     3     Socket soc = null;
     4     public String name;
     5     public String roomName;
     6     public InputStream is = null;
     7     public OutputStream os = null;
     8     public BufferedReader br = null;
     9     public BufferedWriter bw = null;
    10     public BufferedReader sysbr = null;
    11 
    12     public String getName() {
    13         return name;
    14     }
    15 
    16     public void setName(String name) {
    17         this.name = name;
    18     }
    19 
    20     public String getRoomName() {
    21         return roomName;
    22     }
    23 
    24     public void setRoomName(String roomName) {
    25         this.roomName = roomName;
    26     }
    27 
    28     public Client(String name) {
    29         // TODO Auto-generated constructor stub
    30         this.name = name;
    31         try {
    32             soc = new Socket("localhost", 5555);
    33             is = soc.getInputStream();
    34             os = soc.getOutputStream();
    35             System.out.println(soc.getInetAddress()+"
    ");
    36             System.out.println(soc.getPort());
    37             br = new BufferedReader(new InputStreamReader(is));
    38             bw = new BufferedWriter(new OutputStreamWriter(os));
    39             sysbr = new BufferedReader(new InputStreamReader(System.in));
    40 
    41         } catch (IOException e) {
    42             // TODO Auto-generated catch block
    43             e.printStackTrace();
    44         }
    45     }
    46 
    47     public static void main(String[] args) {
    48         // TODO Auto-generated method stub
    49         Client c = new Client("he");
    50         String msg;
    51         try {
    52             do {
    53                 msg = c.sysbr.readLine();
    54                 c.bw.write(msg + "
    ");
    55                 c.bw.flush();
    56                 if((msg=c.br.readLine()) != null){
    57                     System.out.println(c.br);
    58                 }
    59             } while (!msg.equals("quit"));
    60             System.out.println("对话结束");
    61             
    62         } catch (IOException e) {
    63             // TODO Auto-generated catch block
    64             e.printStackTrace();
    65         }
    66 
    67     }
    68 
    69 }

      其中每个客户类包含成员变量:昵称(name)、所属聊天室名称(roomName)等。能建立到服务器的连接,将在建立好服务器端后与服务器端一起完善功能。

  • 相关阅读:
    火狐 http://localhost:8080自动跳转到http://www.localhost.com:8080
    Windows下搭建PHP开发环境
    对帝国cms、dedecms、phpcms等负载测试总结
    System.ExecutionEngineException: Attempting to JIT compile method System.Linq.Enumerable
    SQLCMD Mode: give it one more chance
    transition状态下Mecanim动画的跳转
    Lua库-bit32库
    C语言输入输出函数总结
    Lua库-table
    Lua中的数据结构
  • 原文地址:https://www.cnblogs.com/bjut13070017/p/5602207.html
Copyright © 2011-2022 走看看