仿QQ聊天軟體java實現(一)
之前學java通訊的時候寫過簡單的通訊程式,但比較簡陋,於是重新寫了一個仿照QQ的聊天軟體,主要在介面上做了優化,增加了一些功能。實現的功能有註冊、登入、好友列表、分組、黑名單、新增好友、群列表、建立群、新增群、聊天氣泡、傳送文字、圖片、檔案、表情。
好了先上圖看下效果:
註冊/登入介面:
主介面:
私聊(目前只實現前三個按鈕,表情、檔案、圖片):
群聊:
接下來講講具體的實現過程:
系統分為伺服器和客戶端兩部分,所有客戶端都是通過伺服器來進行身份驗證和聊天資訊轉發的。客戶端提供使用者操作介面,產生請求傳送給伺服器和接收伺服器訊息,伺服器對客戶端請求進行處理和傳送資訊給客戶端。
系統結構設計圖
1.資料庫設計
使用Mysql資料庫儲存資料,伺服器通過JDBC連線資料庫。
1.1概念結構設計
資料庫實體E-R圖
1.2邏輯結構設計
相關推薦
仿QQ聊天軟體java實現(一)
之前學java通訊的時候寫過簡單的通訊程式,但比較簡陋,於是重新寫了一個仿照QQ的聊天軟體,主要在介面上做了優化,增加了一些功能。實現的功能有註冊、登入、好友列表、分組、黑名單、新增好友、群列表、建立群、新增群、聊天氣泡、傳送文字、圖片、檔案、表情。 好了先上圖看下效果:
Android開發之仿QQ側滑刪除實現(二)
一、把SlideDelete的簡單樣式先做出來。 SlideDelete繼承自ViewGroup,在引用SlideDelete的xml的位置include進兩個layout,一個是內容,一個是刪除 一、1、準備兩個佈局 內容部分 <?xml version="1.
常見演算法題分析---java實現(一)
第一次部落格,有錯誤勿噴,謝謝! 一,如何不用比較運算子,比較兩個數的大小 分析:在計算機中判斷兩個數不用比較運算子,一般兩個數做減法 a-b,然後再去可以使用位運算子來進行判斷這個數的正負,從而知道大小,有兩個位運算,>>和>>>,>
仿QQ聊天軟體及原始碼java版
一直以來,很多java的同志們都沒有一個完整資料來參考。把原始碼貼出來,大家共享! import java.awt.BorderLayout; import java.awt.Component; import java.awt.Dialog; import java.a
JAVA仿QQ聊天系統4.0(擴充套件韓順平的程式的功能及介面)附原始碼
下載連結 http://download.csdn.net/detail/qq245034548/8391381連結:https://pan.baidu.com/s/1btDApLQuHvLk44EtWKQygw 密碼:3ezf4 詳細設計4.1 系統程式流程如下
java 類似QQ的本地聊天室程式實現(上)(客戶端程式)
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.O
網路程式設計(三)---- MFC 仿QQ聊天軟體
今天來八一八,MFC的SOCKET 程式設計,利用CSocket實現一個基於TCP實現一個QQ聊天程式。你會發現,MFC要比WIN32 簡單的多。但是如果你不理解具體API socket基礎知識,你可能會覺得有一點費解。 所以在開始之前 我還是請大家先看看http://bl
Android項目實戰(十六):QQ空間實現(一)—— 展示說說中的評論內容並有相應點擊事件
con toast short demo append 集合 obj parent 自帶 原文:Android項目實戰(十六):QQ空間實現(一)—— 展示說說中的評論內容並有相應點擊事件大家都玩QQ空間客戶端,對於每一個說說,我們都可以評論,那麽,對於某一條評論:
Java併發(四):volatile的實現原理 Java併發(一):Java記憶體模型乾貨總結
synchronized是一個重量級的鎖,volatile通常被比喻成輕量級的synchronized volatile是一個變數修飾符,只能用來修飾變數。 volatile寫:當寫一個volatile變數時,JMM會把該執行緒對應的本地記憶體中的共享變數重新整理到主記憶體。 volatile讀:當讀一
Java關於傳統的excel匯出的實現(一)
匯出的excel如下: 如果沒有特殊的格式啥的要求,此方法已經滿足,如果遇到標題或者定製的那種內容,就需要改造此方法!注意一下,這個方法只適合簡單的匯出使用。如果那種定製模板的匯出,在下一篇文章中我會有給出方法! 第一,控制層(controller層)的程式碼如下: /** * 列
仿QQ聊天軟體2.0版
仿QQ聊天軟體2.0版 轉載請標明出處:牟尼的專欄 http://blog.csdn.net/u012027907 上次課設做了Java版的仿QQ聊天程式。這次軟體實訓,我們繼續完好了仿QQ聊天程式,將上次未完畢及不完好的地方
JAVA高階基礎(8)---Set的典型實現(一):HashSet
HHashSet 注:更多詳細方法請自行在 API 上查詢 HashSet 是由hash表(hashMap)支援,不保證元素的迭代順恆久不變,允許存在null值,元素不允許重複,同時,不是執行緒安全的 HashSet是基於HashMap實現的。 &n
基於java的微信小程式的實現(一)專案介紹
一,專案介紹 佐倉短視訊是一個以java為後臺編寫的短視訊類的微信小程式專案 使用者可以實現登入,註冊,視訊檢視,視訊上傳,個人資訊檢視,頭像上傳等功能 二,技術選型和效果預覽 本專案後端採用spring boot +spring data jpa的技術實現
基於《仙劍奇俠傳柔情版》利用Java的簡單實現(一)
基於《仙劍奇俠傳柔情版》利用Java的簡單實現(一) 2018-12-01 23:55:36 by Louis 一,新建一個類GameFrame.class,具體程式碼如下: package firstDemo; import javax.swing.JF
JAVA 學習(一):16進位制字串自增的實現
JAVA學習系列,並不是從基礎去講java的知識,而是把我在學習或是工作中,一些思想、邏輯總結出來。 原先在工作中,因為測試的需要,經常要往資料庫中批量的插資料。而表的主鍵用的是UUID,是由16進位制字元加“-”組成的,還有裝置的mac地址是由16進位制字元加“:”組成的,那個時候,我剛學ja
java-FFmpeg(一) 實現視訊的轉碼和截圖功能
FFmpeg是一個開源免費跨平臺的視訊和音訊流方案,屬於自由軟體,採用LGPL或GPL許可證(依據你選擇的元件)。它提供了錄製、轉換以及流化音視訊的完整解決方案。它包含了非常先進的音訊/視訊編解碼庫libavcodec,為了保證高可移植性和編解碼質量,libavcodec裡很多codec都是從頭開發
Java常用的八種排序演算法與程式碼實現(一):氣泡排序法、插入排序法、選擇排序法
這三種排序演算法適合小規模資料排序 --- 共同點:基於比較,時間複雜度均為O(n2),空間複雜度均為O(1)(原地排序演算法) 不同點:插入排序和氣泡排序是穩定的排序演算法,選擇排序不是 --- 穩定排序演算法:可以保持數值相等的兩個物件,在排序之
檔案讀寫工具簡單實現(一)之java的UI介面視覺化畫圖/製作
現在和大家介紹下,我們簡單的介面工具開發,使用者選擇檔案,讀出部分想要檔案內容,滑鼠在大輸入框點選某一行就會顯示在其他輸入框中,然後在其他輸入框修改後內容,點寫入按鈕即可修改並顯示到大輸入框中,且原檔案對應剛剛選的改行內容;大概的介面如下,網路現在原因不能上傳圖片:選擇檔案按
從Java的物件頭到Java內建鎖synchronized的底層實現(一)
就如標題,今天我們的話題會從物件說起。我們知道物件在JVM的記憶體結構中,是存放在堆記憶體中的(new 一個類之後JVM會在堆上為new出的物件申請一塊空間)。在記憶體中,一個Java物件包含三部分:物件頭、例項資料和對齊填充。而物件頭記憶體有的資訊就有ma
Android學習之仿QQ聊天介面的實現
前言: 好幾天沒動手了,感覺有點手懶了,幹我們這行真的一點不能懈怠啊! 回來寫了個仿扣扣聊天介面的實現,動態新增聊天內容等! 分析: 主體:RecylerView+LinearLayout 效果: 簡單的模仿一下扣扣。 下面介紹一下怎麼實現的