基於Java的物聯網基礎應用開發

基於Java的物聯網基礎應用開發

作者: 虞芬 王燕貞 徐傑 吳煥祥 殷俠 王法強 吳冬燕 榮喜豐 李蘭蘭 彭坤容 魏美琴 蔡敏 黃非娜 鄒宗冰
出版社: 清華大學
出版在: 2021-07-01
ISBN-13: 9787302583424
ISBN-10: 7302583420
裝訂格式: 平裝
總頁數: 365 頁





內容描述


《基於Java的物聯網基礎應用開發》編者總結了十多年的物聯網專業教學和指導學生參加競賽的經驗,精心選擇物聯網方面典型的項目展開分析,根據項目需求設計工作任務,採用任務式結構編寫,通過引導讀者完成不同的物聯網程序任務,對Java物聯網開發各方面的知識進行講解。全書共分為13個項目,建議學時為100學時,不包括項目12和項目13。項目12和項目13建議採用綜合實訓課形式。 《基於Java的物聯網基礎應用開發》既可以作為高等院校本科和高職物聯網工程及相關專業學生的教材使用,又可以作為物聯網相關從業者和愛好者的參考用書。


目錄大綱


目錄
項目1  智慧園區系統項目概述 1
【需求描述】 1
【需求分析】 1
1. 門禁安防模塊 1
2. 室內環境監控模塊 2
3. 園區環境監測模塊 2
【運行效果】 4
【技術選型】 5
【設備選型】 5
【知識前提】 5
項目2  初識Java與物聯網 6
任務1  瞭解Java與物聯網 7
【任務描述】 7
【知識解析】 7
1. Java語言介紹 7
2. Java語言的特點 8
3. Java與物聯網 8
任務2  搭建Java開發環境 9
【任務描述】 9
【知識解析】 9
1. JDK簡介 9
2. 下載並安裝JDK 10
3. 配置環境變量 11
任務3  編寫第一個Java程序 13
【任務描述】 13
【知識解析】 13
1. Java中的註釋 13
2. Java中的標識符 14
3. Java中的關鍵字 15
【任務實施】 15
任務4  使用Eclipse開發工具 17
【任務描述】 17
【任務實施】 17
任務5  第一個Java物聯網程序(隨心所欲亮燈滅燈) 22
【任務描述】 22
【拓撲圖】 22
【知識解析】 23
【任務實施】 23
思考與練習 26
項目3  傳感數據解析和控制指令生成 27
任務1  顯示溫濕度傳感器數據 28
【任務描述】 28
【拓撲圖】 28
【知識解析】 29
1. 基本數據類型 29
2. 基本數據類型的轉換 33
【任務實施】 35
任務2  ZigBee傳感數據計算 38
【任務描述】 38
【拓撲圖】 38
【知識解析】 38
1. 算術運算符 38
2. 賦值運算符 40
3. 比較運算符 41
4. 邏輯運算符 42
5. 位運算符 43
6. 三目運算符 45
7. 運算符的優先級 45
【任務實施】 46
任務3  ZigBee傳感數據採集分析 49
【任務描述】 49
【拓撲圖】 49
【知識解析】 49
1. 條件控制 49
2. 循環控制 55
【任務實施】 60
任務4  ZigBee控制指令的生成 65
【任務描述】 65
【拓撲圖】 65
【知識解析】 65
1. 一維數組 66
2. 多維數組 69
【任務實施】 70
思考與練習 76
項目4  從串口獲取傳感器數據 77
任務1  編寫串口管理工具類 78
【任務描述】 78
【拓撲圖】 78
【知識解析】 78
1. 面向對象的概念 78
2. 類與對象 79
3. 成員變量 82
4. 方法 84
5. 構造方法 86
6. this關鍵字 89
7. RXTX串口通信工具 90
【任務實施】 90
任務2  獲取真實的傳感器數據 94
【任務描述】 94
【拓撲圖】 94
【知識解析】 94
1. Java常見代碼塊 94
2. Java垃圾回收機制 95
3. 包與訪問權限 96
4. 類的封裝 98
5. 單例模式 98
6. 枚舉 99
7. 導出jar依賴包 101
【任務實施】 102
思考與練習 104
項目5  採集傳感數據的API的構建 105
任務1  構建採集ZigBee數據的API 106
【任務描述】 106
【拓撲圖】 106
【知識解析】 106
1. 類的繼承 106
2. 抽象類和接口 111
3. Lambda表達式 114
4. 多態 115
【任務實施】 118
任務2  構建串口開發自定義異常的
API 122
【任務描述】 122
【知識解析】 122
1. 認識Java異常 122
2. 處理Java異常 124
3. 自定義異常類 127
4. Java中的類加載和反射
?技術 128
【任務實施】 132
思考與練習 136
項目6  認識系統常用類 137
任務1  ZigBee控制器命令的生成工具 138
【任務描述】 138
【知識解析】 138
1. 字符串概述 138
2. String類 138
3. StringBuffer類與StringBuilder類 142
4. JSON字符串解析 143
【任務實施】 147
任務2  驗證用戶註冊信息 150
【任務描述】 150
【知識解析】 151
1. Date類 151
2. SimpleDateFormat類 152
3. Calendar類 154
4. Math類 155
5. Random類 157
6. 基本數據類型的封裝類 157
【任務實施】 158
思考與練習 164
項目7  智慧園區系統界面開發和事件處理 165
任務1  智慧園區登錄界面 166
【任務描述】 166
【知識解析】 166
1. JavaFX簡介 166
2. JavaFX的主要特徵 166
3. JavaFX工程 167
4. JavaFX工程入口 167
5. 創建FXML文件 168
6. SceneBuilder添加控件 168
7. 加載FXML文件 172
【任務實施】 173
任務2  智慧園區功能界面 176
【任務描述】 176
【知識解析】 177
1. JavaFX元素的id 177
2. JavaFX界面的controller 177
【任務實施】 179
任務3  智慧園區系統事件的監聽 181
【任務描述】 181
【知識解析】 182
【任務實施】 184
思考與練習 186
項目8  使用集合 187
任務1  使用List存儲傳感器數據日誌 188
【任務描述】 188
【拓撲圖】 188
【知識解析】 188
1. Java集合概述 188
2. Collection接口 189
3. List接口 190
4. ArrayList集合 190
5. LinkedList集合 191
6. Iterator接口 192
7. forEach遍歷 195
【任務實施】 195
任務2  實現智慧園區系統用戶註冊
功能 199
【任務描述】 199
【知識解析】 199
1. Set接口 199
2. HashSet 200
3. TreeSet 202
【任務實施】 203
任務3  使用Map存儲採集器數據 207
【任務描述】 207
【拓撲圖】 208
【知識解析】 208
1. Map接口 208
2. HashMap 209
【任務實施】 211
思考與練習 217
項目9  使用IO流 218
任務1  使用File類讀寫用戶信息文件 219
【任務描述】 219
【知識解析】 219
【任務實施】 222
任務2  使用IO流持久化保存用戶註冊
? 信息 224
【任務描述】 224
【知識解析】 225
1. Java的IO包 225
2. 字節流 226
3. 字符流 229
【任務實施】 234
任務3  智慧園區系統配置參數的讀寫 237
【任務描述】 237
【知識解析】 238
【任務實施】 239
思考與練習 241
項目10  實時更新數據 242
任務1  實時更新可用串口列表 243
【任務描述】 243
【拓撲圖】 243
【知識解析】 243
1. 進程與線程 243
2. Thread類 244
3. 創建線程的兩種方式 245
【任務實施】 247
任務2  實時園區門禁監測 250
【任務描述】 250
【拓撲圖】 250
【知識解析】 250
1. 線程狀態的轉換 250
2. 守護線程 253
3. 退出/停止線程 253
【任務實施】 256
任務3  實時火警警示 264
【任務描述】 264
【拓撲圖】 264
【知識解析】 265
1. 為什麽要使用線程同步 265
2. 同步代碼塊與同步方法 266
3. wait與notify 270
【任務實施】 270
思考與練習 273
項目11  網絡與定位技術的使用 274
任務1  利用北鬥定位模塊獲取地理
位置信息 275
【任務描述】 275
【拓撲圖】 275
【知識解析】 276
1. 網絡通信基礎知識 276
2. URL與URLConnection 278
3. 百度地圖Web服務API 281
【任務實施】 281
任務2  將經緯度數據上報到雲平臺 290
【任務描述】 290
【拓撲圖】 291
【知識解析】 291
1. 基於TCP的Socket
?套接字 291
2. 基於UDP的數據包傳送 293
【任務實施】 295
思考與練習 307
項目12  智慧園區系統綜合實現(串口篇) 308
【拓撲圖】 309
【技能目標】 310
【項目實施】 310
項目13  智慧園區環境實時監測(雲平臺篇) 333
【拓撲圖】 334
【技能目標】 334
【項目實施】 335
參考文獻 366


作者介紹


虞芬,九江職業技術學院信息工程學院副院長,長期從事計算機專業教學與管理,主授課程程序設計基礎、數據庫技術。
主編《C語言程序設計》、《計算機文化基礎》等教材多部。




相關書籍

輕課程 Scratch(mBlock) 機電整合與 Arduino 控制輕鬆學 - 使用 iPOE A2 積木四輪車

作者 賴鴻州

2021-07-01

Robot Magic: Beginner Robotics for the Maker and Magician

作者 Marchese Mario

2021-07-01

物聯網通信安全及解決方案

作者 於爾基 T.J.潘蒂寧

2021-07-01