基于Socket实现的局域网多线程聊天室

项目功能:

  • 使用线程池创建多个线程,一个线程就是一个客户端的连接;
  • 客户端能够实现注册、群聊、私聊以及退出的功能;
  • 服务器端用Map保存多个客户端和消息;
  • 群聊就是将map集合遍历,将消息发送给每个客户端(把Map转为Set,取得迭代器,取得每个实体)
  • 私聊就是取得对应的socket
  • 退出使用迭代器移除

项目技术栈:Java I/O;线程池;类集的使用;Java基础知识的应用

项目源码:Heart to chat

项目总结:
发现了在windows下,发送的消息结尾都是“\r\n”,而编译器只能识别到\n,所以我们在windows下都要消除自带的\r;这时候就需要了解正则表达式相关的知识。
项目还有很多的不足,改进方面还有很多,可以使用JDBC数据库来实现,也可以添加网页,使得界面更美观,以及socket的使用,接下来要了解socket,使用socket来实现通信。

你可能感兴趣的:(JavaSE,java)