基于JAVA局域网聊天程序设计与实现(6)

2018-11-17 19:18

工程技术学院毕业设计(论文)专用纸

}

public String receiveMsg()throws IOException{//接收数据 }

String msg=new String(); try {

msg=in.readLine();

} catch (IOException e) {??} return msg;

5和6主要完成对群消息的处理,5主要完成对信息的解包,显示等等;而6主要是对TCP连接的信息的接收,以及对用户信息的保存。 7.TCPConnect

public void run(){

try {

listen=new ServerSocket(port);

processMsg(\正在监听TCP端口???\建立TCP连接

} catch (Exception e) { } }

??

while(true){

Socket client = listen.accept();

MainChatFrame mf=new MainChatFrame(client,name);//启动一个私聊主界面 }

processMsg(\群聊功能仍可使用\建立失败,不过还可以群聊

??

根据所得到对方的IP信息建立一个TCP连接,并启动一个私聊主界面,进行TCP

通信。 8.UserInfo

public class UserInfo {//初始化用户信息,姓名以及IP地址,姓名是通过登录界面由用户键入的,IP

//地址是程序直接由机器获取的

21 第 页

工程技术学院毕业设计(论文)专用纸

private String name; private String IP;

public UserInfo(String name, String ip) {this.name = name;IP = ip;} public String getIP() {return IP;} public void setIP(String ip) {IP = ip;} public String getName() {return name;}

public void setName(String name) {this.name = name;}

}

记录IP及用户名。

9.MainChatFrame

public void init(String name){//传入的参数为自身的用户名 ??

input.addActionListener(new ActionListener(){//接收信息的监听器 public void actionPerformed(ActionEvent e) { try { sendMsg(input.getText());

processMsg(\

input.setText(\

}}});

??

send.addActionListener(new ActionListener(){//发送信息的监听器 public void actionPerformed(ActionEvent e) { try { sendMsg(input.getText());

processMsg(\

input.setText(\

}}});

??

}

显示点对点聊天窗口,建立接收和发送数据的监听。

10.GroupChatFrame

第 22 页

工程技术学院毕业设计(论文)专用纸

public void eventHandle(){ input.addKeyListener(new KeyListener(){//接收信息的监听器 public void keyPressed(KeyEvent e) { if(e.getKeyChar()=='\\n') try{ byte[] dataS=(name+\

sf.packet=new

DatagramPacket(dataS,dataS.length,sf.group,sf.DEFAULT_PORT); sf.socket.send(sf.packet); input.setText(\

} ??

}});

sendBtn.addActionListener(new ActionListener(){//发送信息的监听器 public void actionPerformed(ActionEvent e) { try{ byte[] dataS=(name+\

sf.packet=new

DatagramPacket(dataS,dataS.length,sf.group,sf.DEFAULT_PORT); sf.socket.send(sf.packet); input.setText(\

}

??

}});}

显示群聊天窗口。

11.LoadingFrameDemo

public class LoadingFrameDemo {//主方法程序 public static void main(String[] args) { new LoadingFrame().init();

}

}

程序的入口。

第 23 页

工程技术学院毕业设计(论文)专用纸

4 JAVAqq局域网聊天程序的设计与实现

4.1 开发环境工具

基于JAVA聊天系统的设计主要运用JAVA与语言与Socket类开发。其开发的主要环境包括(Windows平台):

java环境jdk,建议采用jdk1.5以上,另外还需配置classpath环境变量,本系统开发工具为MyEclipse5.5;

4.2 硬件环境

本系统运行环境所需用到的环境为: 硬件配置 :

中央处理器(CPU) :Intel Core Duo processor T2250; 硬 盘:40GB HDD; 内 存:1G 667HZ;

显示器:14.1” WXGA CrystalBrite LCD; 显 卡:Up to 256MB NVIDIA GeForce Go 7300

软件环境:WINDOWS XP、MyEclipse 6.5、jdk1.6.03等。

4.3 聊天系统功能模块的测试

本次课程设计的编译环境,及编写平台为java。主要用到的类为java.net包中的Socket类和javax.swing包中的类。

服务器线程在程序运行期间一直有效,接受客户端请求信息,转发客户端聊天内容, 查看用户信息。

客户端运行时必须先登陆,登陆界面如图1,客户端主界面如图2,聊天程序主界面

24 第 页

工程技术学院毕业设计(论文)专用纸

如图3,可以和所有在线用户群聊,也可以和某个用户私聊如图4。

最终效果:

图1 登陆界面

图2 客户端主界面

第 25 页


基于JAVA局域网聊天程序设计与实现(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:怀山药GAP基地建设可行性研究报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: