JAVA版 山寨QQ 附图 附源码

前段时间用java写了一个“山寨QQ”,趁着今天有时间,来总结一下:

 

本文最后是这个程序的源代码


一、项目的主要意义:

通过对QQ的模仿,来熟练J2SE的一些技术点。


二、项目实现的主要功能:


1.注册,通过在界面上填写相关资料,获得一个唯一的账号,并持久化到系统的本地文件

2.登录,登录到服务器,在自己的QQ界面上,可以查看好友资料

3.添加好友,添加在线的用户为自己的好友

4.聊天(离线消息,在线消息),实现了系统托盘监听器

5.传文件,可以给在线好友传送文件

6.系统后台监视,可以实时了解当前系统的在线用户,可以给用户发送系统消息

 

7.客户端掉线提示

 

 

三、项目所涉及到的关键技术点

 

1.java Swing界面编写

2.java多线程

3.内存缓冲队列

4.socket通信

5.自定义通信协议

6.设计模式

7.线程监控

四、项目的主要界面:


1.注册界面,如下图

JAVA版 山寨QQ 附图 附源码_第1张图片

 

2.登录界面,如下图所示:

 

JAVA版 山寨QQ 附图 附源码_第2张图片

 

3.登录成功主界面

JAVA版 山寨QQ 附图 附源码_第3张图片

 

4.查看好友资料

JAVA版 山寨QQ 附图 附源码_第4张图片

 

5.好友上线提示

 

JAVA版 山寨QQ 附图 附源码_第5张图片

 

6.查找添加好友

JAVA版 山寨QQ 附图 附源码_第6张图片

 

7.聊天窗口

 

JAVA版 山寨QQ 附图 附源码_第7张图片

 

 

8.传送文件

JAVA版 山寨QQ 附图 附源码_第8张图片

 

9.系统消息

JAVA版 山寨QQ 附图 附源码_第9张图片

 

10.后台界面

JAVA版 山寨QQ 附图 附源码_第10张图片

 

忙活了这么久,也算是给自己有个交代了。

接下来的任务就是重新拾起web方面的知识,希望能够在以后的学习过程中,

跟大家互相勉励,共同提高啦······

 

另外本人还有一些没有解决的疑惑,希望能得到大虾们的帮助:

 

1,怎样才能将主界面上面的那棵树的每个节点都换成对应人的头像呢?就是说让树的每个叶子节点都是不同的图标,我

查找过一些资料,上面的效果也重写了渲染器,可是还是没有达到腾讯的效果哦。

 

2,今后本人还想改改通讯方式,想用MINA框架来实现对象的传输,有没有人常用MINA的,给些建议和忠告呢?呵呵,有了你们的指点,我将会少走很多弯路的。

 

3,对于这个程序,是在“蓝杰实训”做的,如果想做视频聊天,不知道有谁可以讨论一下的..呵呵

 

 

 

 

 

你可能感兴趣的:(QQ,Java,Mina,Swing,IDEA)