TX一直在山寨它人,那就让我们来山寨一个TX吧!
这篇还是用来介绍JAVA 即时通讯工具nothing-to-say的,之前有一篇介绍:[url]http://nothing-whoami.iteye.com/blog/1611315[/url]。但是有网友E-mail说这个菜做的貌似是很讲究,但是你的Cookbook写的有点太简单的。以致于我们都不知道怎么吃!所以只好顺应民意,再来一篇,希望以前看到的朋友可以跳过,当然也可以再看一遍!
蛋我们暂时先放到一边,慢慢扯 。接下来切入正题!
系统主要功能以及使用流程
主要实现申请系统账号的功能。在本系统中,要实现即时交流就必须要拥有合法的账号才能进行。一个新的用户在提交自己的一些描述信息的前提下(如:用户的姓名、昵称、性别等信息),由服务器为其分配一个唯一的账号。
主要实现从客户端登录系统。其工作过程是:客户在登录时需要给出客户的账号和口令,并将账号和口令送服务端进行身份验证,当验证通过时服务器将该用户的好友信息发回客户端。
主要实现添加好友功能。在本系统中客户只能与好友聊天,所以在与某位用户聊天之前必须先将该好友添加到好友列中。其主要工作过程是:首先输入好友的账号,然后由客户端提交到服务器,点击加为好友即可加入好友列表。
主要实现从好友列表中删除好友的功能。当你不愿意再与某个好友聊天,可以将该好友从好友列表中删除。其工作过程是:首先选择一个待删除的好友,然后向服务器端提出删除好友的请求,当服务器许可即完成好友的删除操作。
主要实现好友间单独聊天的功能。其主要过程是:用户首先从好友列表中选择一个好友,然后打开私聊窗口,通过该聊天窗口来实现与好友之间的交流。
用户可以加入一个群中,这样在群里面的用户可以共同参与讨论,都能同时看到群成员发送的信息
当你跟一位好朋友聊天时,不小心关掉了聊天窗口,这时就可以在最近联系人的好友列表中快速找到。
当你好友列表中的人有上线时,你屏幕的右下角会以渐陷渐现的方式闪出一小窗口提醒你某某好友已上线。
主要实现在和好友聊天时可以发送各种格式的文件。工作流程:用户首先打开一发送文件的好友对话框,选择待发送的文件并向其请求付输,对方许可后即可开始传输文件,在对话框右边会提示相应的文件传输进度。
主要实现好友的语音聊天功能。工作流程:首先打开要通与之语音话的好友,点击语音通话申请。等对方同意后即可开始语音通话。
这个功能主要是更加增强社交好友的趣味性,同时也非常的实用。主要功能是实现当你告诉系统你所暗恋的对象时,如果对方设置的暗恋对象也是你,那么系统就会同时告之双方,你们已经随入爱河,从而促成一段美妙的姻缘。
再抛项目的时序图、系统流程图、功能模块视图!
时序图
系统流程图 功能模块视图
程序在视频(由于当时时间太紧,所以后来改成拍照了。哈哈~)和音频有用到JMF相关包,以及Apache的commons-dbutil.jar我放在Google code的Download下面,需要的朋友去下载,当然注意检出后配置jar包的路径。至于JMF是什么?我知道肯定有人要问了、没问题,知之为知之,不知Google之!
JMF下载地址:http://download.oracle.com/otn-pub/java/jmf/2.1.1e/jmf-2_1_1e-windows-i586.exe
dbutils下载地址:http://mirror.bit.edu.cn/apache//commons/dbutils/binaries/commons-dbutils-1.5-bin.zip
这个程序朋友们普遍反馈说如果只看这个程序的上半身的话简直就是Q。下半身没弄成Q是因为我没想弄成Q,主要是感觉Q的下半身功能不太实用了。
这个软件是我在实习时写的(经常出差,时间不充分!所以只把主要的功能实现了)。一直没有发布的原因是因为我自己也想找个时间完善一下再发布。结果就是因为各种工作原因也一直没顾的上修改。最近看了《拖延心理学》,于是果断把拖延的事情列出清单,顺便把工作辞了!先把项目发布了。代码是在可能有点乱(毕竟是小鸟时期(还不是菜鸟)的作品)!希望对您能有点参考价值。
项目我已经在google code、github发布了。
Google Code:http://code.google.com/p/nothing-to-say/
github : https://github.com/nothing-whoami/nothing-to-say
有问题的朋友可以E-mail:nothing.whoami#gmail.com #/@。
如果属于普遍性的问题我会在放在贴子后面补充,如果是个别的问题我会单独在E-mail中回复!这里再补充下如何在Google code检出源码的工具SVN,如果不会用命令行的就用TortoiseSVN吧。遇到这个类问题麻烦先Google下,如果不会Google的话,那就试着用百度Google一下。重要的不是你学会了某点知识,而是你掌握某种方法!