1. 程式人生 > >Netty Springboot仿微信聊天全棧實戰 從0開發到上線部署視頻教程

Netty Springboot仿微信聊天全棧實戰 從0開發到上線部署視頻教程

線程模型 win 主動 tomcat 高性能 手機端 線程 pen ade

下載地址:百度網盤下載

第1章 課程介紹

本章首先讓大家徹底明白通過本課程的學習具體收獲有哪些?課程內容具體安排與學習建議,然後為大家簡單介紹課程涉及到的技術棧等。

1-1 課程介紹
第2章 netty介紹與相關基礎知識

初識netty,學習阻塞與非阻塞,同步與異步,理解BIO、NIO、AIO以及netty的線程模型

2-1 初始netty
2-2 阻塞和非阻塞、同步和異步的概念
2-3 BIO講解
2-4 NIO講解
2-5 BIO NIO AIO的區別與理解
2-6 再看netty
2-7 netty的三種線程模型
第3章 使用netty編寫第一個hello netty 服務器

從零開始使用netty編寫服務器,在網頁訪問後返回hello netty,主要對服務器啟動類,channel初始化器以及助手類講解,最後會對channel的生命周期進行講解

3-1 使用maven構建netty基礎依賴
3-2 構建hello服務器
3-3 為channel設置初始化器
3-4 編寫自定義助手類
3-5 hello服務器啟動與講解
3-6 netty生命周期
第4章 使用netty構建websocket服務器

理解實時通信,使用netty的websocket編寫服務端啟動類、子處理器以及助手類。 理解JS相關的websocket api,簡單使用hbuilder編寫通信頁面與netty交互並且使用web瀏覽器與手機端瀏覽器進行測試數據交互

4-1 實時通信相關概念講解
4-2 編寫websocket服務端啟動類
4-3 編寫websocket子處理器initialzer
4-4 編寫chatHandler對消息的處理
4-5 基於js的websocket相關api介紹
4-6 簡單實用hbuilder工具編寫前端websocket
4-7 測試web端攜手移動端與後端netty聊天通信
第5章 使用MUI與H5+構建移動端app

零基礎講解MUI、H5+以及hbuilder開發工具,構建慕信輕聊的基本骨架

5-1 MUI,H5+,Hbuilder介紹
5-2 創建項目,頁面基本結構講解
5-3 自定義標題欄樣式
5-4 真機調試與原生標題欄樣式更改
5-5 首頁底部tab選項卡的使用,MUI圖標庫講解
5-6 使用阿裏圖標庫構建自己的icon庫
5-7 tab選項卡切換頁面(上)
5-8 tab選項卡切換頁面(下)
第6章 使用springboot整合netty搭建後臺

對數據庫表設計進行講解並且使用springboot作為主要後臺框架,並且整合mybatis以及netty,重構netty server並且整合

6-1 數據庫表設計
6-2 使用mybatis逆向工具
6-3 搭建springboot2.0工程
6-4 springboot整合mybatis
6-5 整合netty server
6-6 完成netty整合springboot並且測試
第7章 用戶註冊/登錄/個人信息

開發用戶註冊登錄以及個人信息頁面相關功能模塊,其中涉及到高性能分布式文件存儲服務器fastdfs的搭建,並且使用nginx發布可使用http進行web訪問並且下載用戶頭像和二維碼

7-1 註冊登錄頁面講解與後端接口開發1
7-2 註冊登錄頁面講解與後端接口開發2
7-3 登錄註冊頁面的判斷事件與js自定義util
7-4 登錄註冊前後端聯調
7-5 首頁禁止返回和用戶自動登錄講解
7-6 開發我的個人頁面
7-7 動態初始化個人信息
7-8 打開個人頭像頁面
7-9 增加可選擇菜單
7-10 為菜單增加事件綁定
7-11 選擇照片與裁剪插件
7-12 文件服務器概覽
7-13 安裝tracker服務
7-14 安裝storage服務
7-15 配置client並且上傳測試圖片
7-16 nginx安裝與fastdfs配置(上)
7-17 nginx安裝與fastdfs配置(下)
7-18 fastdfs 整合springboot
7-19 後端上傳圖片功能開發
7-20 上傳圖片前後端聯調與測試
7-21 頭像上傳後跨頁面調用自定義事件刷新
7-22 上傳頭像細節部分處理與openwindow的bug處理
7-23 下載頭像到相冊
7-24 修改昵稱頁面
7-25 修改昵稱後端接口
7-26 修改昵稱前後端聯調
7-27 用戶二維碼生成
7-28 我的二維碼作業布置
7-29 我的二維碼作業講解
7-30 用戶退出以及簡單小結
第8章 發現頁面與通訊錄相關功能開發

用戶可以通過搜索其他用戶賬號進行好友添加,或者通過用戶的唯一二維碼進行掃碼添加,發送添加請求後其他用戶可以拒絕或者同意好友請求

8-1 發現頁面編碼
8-2 搜索朋友賬號接口(上)
8-3 搜索朋友賬號接口(下)
8-4 搜索朋友前後端聯調
8-5 搜索結果頁講解以及webview傳參
8-6 發送添加好友請求接口編碼
8-7 前後端連天發送好友請求
8-8 查詢好友請求接口
8-9 朋友接受到請求頁面聯調開發
8-10 好友請求HTML動態渲染
8-11 同意或忽略事件動態綁定
8-12 同意或忽略controller
8-13 同意或忽略的service編寫
8-14 好友請求忽略或拒絕前後臺聯調
8-15 構建掃描器
8-16 掃碼器顏色自定義
8-17 掃碼添加好友聯調
8-18 延時加載預處理數據
8-19 mui 自帶索引列表模板講解
8-20 通訊錄列表整合
8-21 圖文列表和通訊錄整合增加用戶頭像顯示
8-22 查詢用戶的所有好友列表接口
8-23 手機端獲取好友列表保存到本地
8-24 定義通訊錄好友列表模型
8-25 通訊錄列表渲染展現
8-26 好友請求接收方更新通訊錄
第9章 聊天頁面開發

構建手機端上的聊天頁面模型,建立會話,接受發送消息,netty控制點對點消息發送,控制會話重連,聊天記錄的本地保存與左滑刪除,消息標記未讀,消息牽手等。

9-1 聊天頁面講解與展示
9-2 header動態改為好友昵稱,動態滾動到最新消息
9-3 發送按鈕的顏色狀態改變
9-4 彈出軟鍵盤重新設置聊天窗口高度
9-5 發送消息前置條件網絡狀態判斷
9-6 監聽網絡連接事件
9-7 發送消息html渲染
9-8 接收消息html渲染
9-9 發送消息與接收消息時的鈴聲播放
9-10 手機端websocket模型定義和發送消息
9-11 websocket接受消息的渲染_x264
9-12 服務器斷開後的重連機制
9-13 chatHandler初步重構
9-14 構建聊天業務模型
9-15 chatHandler - 處理客戶端連接
9-16 chatHandler - 保存聊天消息到數據庫
9-17 chatHandler - 處理消息發送
9-18 chatHandler - 簽收單條或多條消息
9-19 客戶端onopen聯調,初始化用戶和channel關系
9-20 客戶端發送消息與接收聯調
9-21 接收方獲得消息後重構渲染
9-22 客戶端簽收消息
9-23 websocket新增好友類型聯調
9-24 保存聊天記錄到本地
9-25 從本地獲取聊天記錄
9-26 初始化聊天記錄和渲染
9-27 聊天快照業務簡單講解
9-28 保存聊天快照到本地
9-29 獲取聊天快照
9-30 已讀未讀消息的設置與快照調用
9-31 展示聊天快照
9-32 未讀消息小紅點標記
9-33 點擊快照開始聊天
9-34 未讀消息標記已讀
9-35 開發獲取未讀消息列表接口
9-36 前端獲取未讀消息列表
9-37 批量簽收並且展示未讀消息
9-38 聊天快照左滑刪除效果
9-39 聊天快照右滑刪除聊天記錄與快照
第10章 使用netty編寫心跳檢測

app不會主動和服務端切斷,只會有可能發生離線或者關機或者飛行模式,所以需要在後臺控制心跳,檢測客戶端的讀寫請求來判斷是否清除無用的channel。同時手機端也要保持一定的keepalive。未接受到的消息在用戶下次打開後重新獲取。 ...

10-1 心跳機制的概念與飛行模式
10-2 心跳HeartBeatHandler編碼
10-3 配置空閑handler與超時時間設置
10-4 手機端與netty的心跳測試
10-5 前端keepalive保持,與心跳測試
第11章 後端雲部署與app雲打包

本章節做為上線部分,需要購買雲服務器,采用騰訊雲,會對其進行講解,然後搭建基本環境,包含JDK、tomcat、MariaDB、fastdfs、nginx,springboot打包與部署。最後對手機app進行雲打包

11-1 雲服務器購買推薦及安全組介紹與關聯
11-2 文件傳輸工具的使用
11-3 命令行工具的簡單使用
11-4 雲服務器配置JDK環境
11-5 雲服務器安裝tomcat
11-6 雲服務器離線安裝MariaDB
11-7 雲服務器MariaDB安全設置與客戶端連接調試
11-8 雲服務器安裝圖片服務器的註意事項以及nginx反向代理tomcat服務器
11-9 springboot工程打包
11-10 打包文件上傳到雲服務器並且進行tomcat部署
11-11 app雲打包
第12章 課程總結

課程總結

12-1 課程總結

Netty Springboot仿微信聊天全棧實戰 從0開發到上線部署視頻教程