前段时间用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 附图 附源码

 

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

 

JAVA版 山寨QQ 附图 附源码

 

3.登录成功主界面

JAVA版 山寨QQ 附图 附源码

 

4.查看好友资料

JAVA版 山寨QQ 附图 附源码

 

5.好友上线提示

 

JAVA版 山寨QQ 附图 附源码

 

6.查找添加好友

JAVA版 山寨QQ 附图 附源码

 

7.聊天窗口

 

JAVA版 山寨QQ 附图 附源码

 

 

8.传送文件

JAVA版 山寨QQ 附图 附源码

 

9.系统消息

JAVA版 山寨QQ 附图 附源码

 

10.后台界面

JAVA版 山寨QQ 附图 附源码

 

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

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

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

 

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

 

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

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

 

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

 

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

 

 

 

 

 

相关文章: