• 工作总结
  • 工作计划
  • 心得体会
  • 述职报告
  • 事迹材料
  • 申请书
  • 作文大全
  • 读后感
  • 调查报告
  • 励志歌曲
  • 请假条
  • 创先争优
  • 毕业实习
  • 财神节
  • 高中主题
  • 小学一年
  • 名人名言
  • 财务工作
  • 小说/有
  • 承揽合同
  • 寒假计划
  • 外贸信函
  • 励志电影
  • 个人写作
  • 其它相关
  • 生活常识
  • 安全稳定
  • 心情短语
  • 爱情短信
  • 工会工作
  • 小学五年
  • 金融类工
  • 搞笑短信
  • 医务工作
  • 党团工作
  • 党校学习
  • 学习体会
  • 下半年工
  • 买卖合同
  • qq空间
  • 食品广告
  • 办公室工
  • 保险合同
  • 儿童英语
  • 软件下载
  • 广告合同
  • 服装广告
  • 学生会工
  • 文明礼仪
  • 农村工作
  • 人大政协
  • 创意广告
  • 您现在的位置:六七范文网 > 人大政协 > 正文

    最红网络聊天室【一种基于Java,Swing的网络聊天室的设计与实现】

    来源:六七范文网 时间:2019-05-11 04:52:39 点击:

      摘要:网络聊天室作为一种即时通信软件使用率非常高。网络聊天室的开发语言也很多,利用Java语言的Socket、多线程、Swing、I/O等技术开发了一个网络聊天室,对于学习Java的面向对象编程具有很大帮助,尤其对于《网络编程》课程的教学具有重要的指导作用。
      关键词:Java;Swing;网络聊天室
      0 引言
      网络聊天室作为一种即时通信软件使用率非常高,通过聊天室可以与世界上任何一个角落的人实现信息的交流。网络聊天室的开发语言有很多。本文选择Java作为开发语言。Jaga是SUN推出的新一代网络编程语言,由于其具有面向对象、支持多线程、安全、跨平台等多种特征而得到了广泛的应用。本文综合利用Java Socket、多线程、Swing、I/O等技术开发了一个网络聊天室,对于学习Java的面向对象编程具有很大帮助,尤其对于《网络编程》课程的教学具有重要的指导作用。
      1 网络聊天室的设计
      本聊天室采用C/S结构,即客户端/服务器模式。C/S结构是目前较为流行的网络编程模型、通信双方分为客户端和服务器端,客户端在需要服务时向服务器提出连接请求。服务器一般作为守护进程始终运行,监听网络端口,一旦有客户请求,就会启动一个服务进程来响应该客户。为该客户提供服务,同时自己继续监听服务端口,使后来的客户也能得到服务,即一个服务器可以为多个客户提供服务。
      (1)服务器端的功能:本聊天室的服务器端通过多线程技术可以为多个客户端提供服务。服务器端不断地监听客户端的连接请求,建立连接,接收、显示、转发客户端的聊天消息(即客户端发送的信息都是通过服务器端转发给其他客户端的),还可以给所有客户端发送系统消息。
      (2)客户端的功能:本聊天室的客户端可以发送聊天消息,显示聊天界面。显示聊天记录,退出聊天室时向服务器发送离线消息,使服务器更新在线人数,并向所有在线用户转发该客户离线的消息。本聊天室的系统功能模块图如图1所示。
      2 网络聊天室的实现
      2.1服务器端的实现
      在C/S结构的网络程序中,服务器端总是作为守护进程始终运行,等待客户端的请求连接。通常一个服务器可以为多个客户端提供服务。这在Java中可以通过多线程编程机制来实现。基于多线程的通信方式可以大大提高服务器的利用效率,并能使服务器具备完善的服务功能。
      本聊天室的服务器端采Java Swing技术的图形用户界面,首次启动后的界面如图2所示。当有客户端与之连接后,界面如图3所示。本聊天室利用Java Socket实现客户端和服务器端的连接。Socket是网络上运行的两个程序间双向通信的一端,它既可以接收请求,也可以发送请求,利用它可以很方便地进行网络数据传输。
      服务器端的文件名为Server.java。在该文件中新建一个Server类,作为服务器端的主类,建立连接时使用的是java.net包中提供的面向TCP协议的Server-Socket类。其主要的实现方法和类见表1。
      2.2客户端的实现
      在C/S结构的网络程序中,客户端是请求的发出者,当有需求时。客户端向服务器端发出连接请求,服务器给予响应。本聊天室的客户端也是Java Swing的图形用户界面窗口,通过java.net包中的面向TCP协议的Socket类实现与服务器端的连接。启动两个客户端进行聊天,界面如图4和图5所示。
      客户端的文件名为Client.java。在该文件中新建一个Client类,作为客户端的主类。其主要的实现方法和类见表2。
      3 结语
      本聊天室界面友好,虽然与大型复杂聊天室相比在功能上还稍有欠缺,但是其作为聊天室的主体功能已经具备,尤其是其难易程度适中,综合运用了Java面向对象的多种知识,是高职院校《网络编程》课的一个很好的实例,对于《网络编程》课的教学具有重要的指导作用,笔者在讲授《网络编程》课时,在教师机运行学生编写的服务器端程序Server.java,每名学生都运行自己编写的客户端程序Client.java,与服务器连接实现全班学生聊天,学生对此非常感兴趣,教学效果良好。后续工作可以继续扩展此聊天室的功能,例如实现私聊、发送文件、图片等。

    推荐访问:聊天室 设计 网络 Java