JTouch (Remote GUI) - 最纯粹简约的GUI即时通讯工具

特色:GUI是远程而不是本地的,Server创建GUI,传到所有Client。
用cajo实现。
每个客户端用IP+登陆时间+用户名(User)唯一标示。
在send框输入消息,按按钮发送并取回所有消息。如果消息为空,只取回历史(别人发送的)消息。
目前为聊天室模式(能看到所有登陆服务器的客户端发送的消息)。
但稍加修改即可改为端对端模式(只取回属于自己的消息)




服务端调用方法:
rem 用法见dev.txt
java -classpath bin;grail.jar; Server 8080 1198
pause

客户端调用方法:
rem 用法见dev.txt
java -classpath bin;grail.jar;  -Dsdk.Client.title="JTouch-Java Instant Messaging Tool" sdk.Client //localhost:1198/statefulService

pause

参考:https://java.net/projects/cajo/pages/SDK


后记:cajo/grail是非常棒的跨JVM通讯的框架。用这个框架(尤其是最新的cajo sdk 4)实现的即时通讯工具是我见过的最纯粹简约的局域网GUI即时通讯工具。可惜不是一般的晦涩难懂,是非常晦涩难懂。不同版本之间代码不同。作者给的浮光掠影的介绍及少的可怜不完整的代码更是让人混淆。项目网站很多链接在Java被Oracle收购后成为死链接。互联网上介绍资料竟然如此稀少。这么好的框架不能发扬光大真是可惜啊!


服务端: 服务端程序启动之后弹出窗口,管理员输入IP、端口等信息之后点击启动按钮,服务器启动,服务端窗口自动关闭,之后跳转至服务端信息展示界面,包含用户上线提醒,用户发送信息记录展示。 客户端: 客户端程序启动之后,需要弹出登录界面,当用户成功输入昵称、密码、端口、IP等信息(考虑到用户权限问题,本程序在后台默认有固定IP、端口,)用户只需输入昵称、密码(密码用于后期连接数据库时用来匹配数据库存储的用户信息)。当用户成功输入用户名。昵称、密码等信息客户端登录成功跳转至用户进行端对端的聊天界面。聊天界面大致分为聊天记录展示界面,在线好友信息界面以及用户发送信息处。用户在发送消息处输入想要发送的文本消息,选择在线好友中的好友昵称点击选择好友即可选中您要发给的好友昵称,然后点击发送按钮,即可将消息发送给所选择的好友,同时将信息展示在自己的聊天界面中的聊天记录处 2.2. 功能要求 §2.2.1服务端功能要求: 当管理员输入服务器IP、以及端口等信息之后点击启动按钮之后,服务端正常启动之后,需要保持一直开机状态满足所有用户不论在何时登录之后都能进行与好友之间的聊天交流等,同时服务端还要满足监控用户登录信息,不同用户登录客户端之后,服务器后台能够看到某某客户上线了等提示信息。用于服务端查看好友在线状态同时作为服务器,还要能够监控用户的聊天记录,用于监控用户不能发送一些不利言论,从而将其用户及时作封号处理。阻止其传播一些不健康的言论。 §2.2.2客户端要求: 用户在登录界面输入昵称、密码等信息之后成功登录之后,进行窗口之间的跳转,由登录窗口跳转至进行用户之间的聊天窗口,之前的登录窗口也要随之消失。在聊天窗口之中用户需要根据好友在线信息情况选择自己想要与其进行聊天的对象。用户点击在线好友的昵称点击选择好友即可向该好友发送信息,发送成功之后同时要将其发送的信息以及时间信息展示在自己的窗口之中,同时也要在指定好友的窗口之中有所显示以及时间信息
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值