资源简介
我自己的做的本科毕业设计+毕业论文
以下是部分摘要:
随着互联网的发展,网络聊天工具作为一种交流工具,已经受到网民的青睐。目前,出现了很多功能强大的聊天工具,其中应用比较广泛的有腾讯QQ、MSN-Messager等等。
即时通讯软件,是每一个上网用户都需要的工具,它除了能够让您迅速地在网上找到自己的朋友和伙伴之外,还可以实时交谈和传递信息,截止到目前,全球约有近3亿多人使用即时软件,正因为即时通讯软件拥有数以亿计的用户和增长的市场,所以各个公司都盯上了这个最大的市场,一时间,即时通讯市场硝烟四起。
对等网络(peer-to-peer,简称P2P),应用最初出现时和现在并不相同。事实上可以认为它是若干不同技术以及流行趋势相结合的产物。以下是导致P2P技术发展最重要的趋势:首先,一些新技术与软件工程的结合,形成了一种将工作分散的趋势。P2P计算正是这种分散工作趋势的结果。其次,在企业应用集成等因素的驱动下,过去十年渐渐形成从集中的单机系统转向分布式系统。然而随着互联网的发展,全面的分布式计算也就成为一种迫切需求。

代码片段和文件信息
package javaqq;
import java.io.*;
import java.net.*;
import sun.audio.*;
public class Catcher extends Thread {
MulticastSocket Csocket;
Socket CheckSocket;
Stateframe sf;
InetAddress Cgroup;
DatagramPacket packet;
DatagramSocket socket;
String tag;
int i=0k;
BufferedReader in;
PrintWriter out;
UserInfo[] userinfo;
public final static int CATCH_PORT=7322;
public final static int CHECK_PORT=5001;
public Catcher(MulticastSocket csocket Stateframe sf String tag UserInfo[] userinfo) {
Csocket = csocket;
this.sf = sf;
this.tag = tag;
this.userinfo = userinfo;
try {
Cgroup=InetAddress.getByName(“239.0.0.0“);
} catch (UnknownHostException e) {
e.printStackTrace();
}
start();
}
//实现对组播端口的监听,并作出反映
public void run(){
try {
socket=new DatagramSocket();
while(true){
byte[] Rdata=new byte[256];
packet=new DatagramPacket(RdataRdata.length);
Csocket.receive(packet);//等待接受数据包
//count记录了数据包的最后一位数,也就是记录了用户名的长度。
String count=new
String(packet.getData()).substring(packet.getLength()-1packet.getLength());
int num=Integer.parseInt(count);
//check为数据包的IP地址
String check=new String(packet.getData()).substring(1+numpacket.getLength()-1);
String judge=new String(packet.getData()).substring(01);
String usertag=new String (packet.getData()).substring(1num+1);
//judge为“C”时反送一个含有对方用户名以及本机的IP的数据包到组播组
if(judge.equals(“C“)){
i=sf.friList.getItemCount();
processMsg(usertag);
userinfo[i]=new UserInfo(usertagcheck);
ring();
Connect(check);
}
if(judge.equals(“D“)){
while(userinfo[i]!=null){
String l=userinfo[i].getName();
if(l.equals(usertag)){
k=i;
while(userinfo[k]!=null){
userinfo[k]=userinfo[k+1];
k++;
}
break;
}
}
try {
removeMsg(usertag);
} catch (Exception n) {
try {
removeMsg(usertag);
} catch (Exception n2) {}
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
//Connect()方法实现了对对方回应本机信息的过程,
//其中第一以及最后一个为无用信息,在接受方被吸收掉
public void Connect(String check){
try {
CheckSocket=new Socket(checkCHECK_PORT);
in=new BufferedReader(new
InputStreamReader(CheckSocket.getInputStream()));
out=new PrintWriter(CheckSocket.getOutputStream());
out.println(“--------------------------“);
out.flush();
out.println(tag);
out.flush();
out.println(InetAddress.getLocalHost().getHostAddress());
out.flush();
out.println(“---------------------------“);
out.flush();
} catch (Exception e) {
try {
in.close();
out.close();
CheckSocket.close();
} catch (Exception e1) {
e1.printStackTrace();
}
e.printStackTrace();
} finally{
try {
in.close();
out.close();
CheckSocket.close();
} catch (Exception e1) {
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3555 2009-05-10 16:56 论文(终)\javaqq\Catcher.java
文件 733 2009-05-06 17:54 论文(终)\javaqq\CheckIn.java
文件 2725 2009-05-10 16:56 论文(终)\javaqq\GroupChatfr
文件 2908 2006-11-21 18:28 论文(终)\javaqq\icon.gif
文件 2908 2006-11-21 18:28 论文(终)\javaqq\image\icon.gif
文件 16739 2006-11-18 17:38 论文(终)\javaqq\image\notice.jpg
文件 15499 2006-11-17 12:29 论文(终)\javaqq\image\pic.jpg
文件 12655 2006-11-17 23:41 论文(终)\javaqq\image\QQBG01.gif
目录 0 2010-03-29 16:59 论文(终)\javaqq\image
文件 1104 2009-05-10 16:56 论文(终)\javaqq\Listener.java
文件 2131 2009-05-10 21:15 论文(终)\javaqq\Loadingfr
文件 136 2009-05-06 17:54 论文(终)\javaqq\Loadingfr
文件 1660 2009-05-06 17:54 论文(终)\javaqq\Logon.java
文件 4605 2009-05-10 16:59 论文(终)\javaqq\MainChatfr
文件 16739 2006-11-18 17:38 论文(终)\javaqq\notice.jpg
文件 15499 2006-11-17 12:29 论文(终)\javaqq\pic.jpg
文件 12655 2006-11-17 23:41 论文(终)\javaqq\QQBG01.gif
文件 46960 2003-03-16 23:24 论文(终)\javaqq\sound\bell.WAV
文件 4825 1998-10-29 17:43 论文(终)\javaqq\sound\Global.wav
文件 33166 2003-03-17 07:07 论文(终)\javaqq\sound\reMsg.wav
文件 3461 2001-08-21 19:23 论文(终)\javaqq\sound\system.wav
目录 0 2009-06-10 13:44 论文(终)\javaqq\sound
文件 4772 2009-05-10 16:56 论文(终)\javaqq\Statefr
文件 985 2009-05-06 17:54 论文(终)\javaqq\TCPConnect.java
文件 375 2009-05-06 17:54 论文(终)\javaqq\UserInfo.java
文件 29515 2006-11-23 20:20 论文(终)\javaqq\状态界面.jpg
文件 51800 2006-11-23 20:17 论文(终)\javaqq\登录界面.jpg
文件 54476 2006-11-23 20:23 论文(终)\javaqq\群聊窗口.jpg
文件 50634 2006-11-23 20:22 论文(终)\javaqq\聊天窗口.jpg
目录 0 2009-06-10 13:44 论文(终)\javaqq
............此处省略7个文件信息
- 上一篇:JavaQQ即时通信系统C/S模式
- 下一篇:毕业设计选题系统JSP+MySQL
相关资源
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- 局域网聊天程序,群聊。私聊。发文
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
评论
共有 条评论