原文鏈接:http://www.cnblogs.com/wangleiblog/articles/5323305.html 轉載請注明
最近在弄一個java版的局域網在線聊天項目,功能跟飛秋差不多。p2p嘛,點對點傳輸信息
基本的思路大致如下:
1. 程序一啟動就開啟兩個線程,:
(1) 一個廣播消息,讓局域網里的其他用戶知道自己上線了
(2)第二個監聽局域網的消息,一旦收到其他用戶的廣播消息,就將其加入自己的列表
2. 聊天采用的Socket套接字加多線程的方式進行,每個客戶端都開啟一個Socket和ServerSocket,這樣就可以做到相互發送
3. 文件發送也實現了,原理跟發送文本消息差不多,最大的特點是實現了文件夾的發送,這個比較有意思,雖然難度不大
4. 最覺得有點意思的是用ssh的方式實現了遠程shell的連接,(linux里面的說法)windows里面就是cmd啦,
這樣就可以實現遠程桌面,個人覺得這樣的通過命令行的遠程桌面可以媲美qq的,他那個只是做的比較好罷了。
其他細節就不多說了,希望與大家多交流,代碼中手動設置了幾個編譯難點(防止伸手黨啦,不要介意,仔細讀讀源碼就能看到了,嘻嘻)
不多說了,上圖,給大家看看:
1. 簡單展示一下主要的程序的架構:
2. 聊天界面的展示:
聊天界面:
3.ssh遠程控制:
4. 發送文件:
可以通過這個功能打開對方一個終端
5. 聊天界面的設計簡要展示
這樣的東西希望有心人也可以修改修改,然后大家一起交流交流心得:
下載地址:http://download.csdn.net/detail/u012627658/9473402
壓縮包解壓密碼:wangleiQQ1215714557
代碼里面設置了一個障礙,好好讀讀源碼一下子就能找出來,主要是防止伸手黨們。
嘻嘻。。。。。。。
歡迎交流學習!!
代碼之間工作室,專業計算機程序設計。
技術交流QQ群:439261058
商務合作加QQ:1215714557