瘋狂Java實戰演義

瘋狂Java實戰演義

《瘋狂Java實戰演義》是2010年6月電子工業出版社出版的圖書,作者是楊恩雄、麥凱翔。本書主要講述了15個生動的Java案例以及其開發出來的多種軟體。

基本介紹

  • 書名:瘋狂Java實戰演義
  • 作者:楊恩雄、麥凱翔
  • ISBN:978-7-121-10835-8
  • 頁數:560頁
  • 定價:69.00元(含CD光碟1張)
  • 出版社:電子工業出版社
  • 出版時間:2010年6月
  • 開本:16開
  • 編著指導:李  剛
  • 特點:項目全面,知識覆蓋廣等
內容簡介,編輯推薦,圖書目錄,

內容簡介

《 瘋狂Java實戰演義》以15個生動的Java案例,引領讀者體驗Java開發的樂趣。書中使用Java的Swing技術開發了若干個遊戲,從這些遊戲中可以了解到,Java一樣可以做出優秀的遊戲和應用程式。本書知識點豐富,適合有一定Java基礎、有意向做Java桌面應用程式或者想了解Java圖形界面編程的讀者閱讀,也可作為Java開發程式設計師的案例參考書。
本書 除了這些遊戲案例外,還有若干個讀者平時會接觸到的軟體,例如Windows計算器、MySQL企業管理器、郵件客戶端、多執行緒下載工具等。讀者使用到這些軟體時,根據本書所描述的案例,可以深入了解這些軟體的原理以及開發細節。本書中的所有案例均基於Eclipse IDE開發,源碼均附有詳細的注釋。本書案例由淺入深,帶領讀者一步步體會Java語言之美。

編輯推薦

近年來,隨著Java技術的不斷發展,Java語言已經成為最主流的開發語言,廣泛套用於各個行業:金融、製造、政務、電信等,從大型企業級套用到桌面套用技術,Java無處不在。
除了在大型企業級套用開發中占據了絕大部分的市場份額之外,Java還提供了AWT/Swing、SWT/JFace(著名的Eclipse開發工具就基於此)兩套主流的GUI開發庫,運用它們可以開發出非常優秀的桌面應用程式。
本書匯集了作者精心編寫的15個Java項目、6萬多行Java代碼,集中介紹了如何通過Java語言開發桌面應用程式。本書想通過這些項目達到兩個目的:
 讓讀者體會Java語言的強大魅力,Java語言也可以開發出強大的桌面應用程式;
 將讀者從SSH開發的大量低層次、重複性的體力勞動中釋放出來,多關注Java本身的魅力,如Java的網路通信、多執行緒等。當讀者真正把Java基礎打紮實之後,再去看SSH開發,將會看到更高的層次。
本書除了使用Java的桌面套用技術外,還涉及到其他Java技術,例如JDBC、Java反射、dom4j的使用、JUnit的使用、XStream的使用、Socket編程等。JDBC是一種可用於執行SQL語句的Java API,它可以讓Java開發人員使用純Java開發資料庫套用。本書第15章詳細介紹了如何使用Socket編程去開發一個網路五子棋。本書介紹的項目由淺入深、實用性強,讀者可通過項目實戰來掌握Java語言在編程中的實際運用。
本書的內容結構
本書以15個Java項目為核心,介紹了Java的Swing、AWT圖形界面技術,以及Java網路通信、Java多執行緒支持、Java反射、設計模式、JDBC等知識點。希望通過這15個項目激發讀者的編程激情。
本書前8章主要是一些常見的遊戲和工具,包括控制台五子棋、仿Windows計算器、單機俄羅斯方塊、單機連連看、簡單Java IDE工具等程式,其中,前面7章的項目相對比較簡單,主要讓讀者對Java應用程式開發有一定的了解。
本書第9章和第10章除了使用Java的桌面應用程式外,還詳細介紹了如何使用JDBC運算元據庫,以及如何使用反射對結果集進行封裝等技術。
第11章詳細描述了如何使用Java開發一個多執行緒下載工具,其中包括如何實現斷點續傳、HTTP下載等功能。
第12章使用JavaMail技術開發了一個類似於Foxmail的郵件客戶端,介紹了JavaMail、XStream等技術的使用。
第13章描述的是一個MySQL管理器,在平時的開發過程中,我們會接觸到各種各樣的MySQL管理器,在該章中,讀者可以了解到這些MySQL管理器的實現細節。
Spring是當前流行的Java EE框架,主要分為IoC和AOP技術,其IoC套用最為廣泛,第14章編寫了一個類似於Spring的IoC容器,通過該項目即可讓讀者掌握XML、dom4j、Java反射在實際項目中的套用,也能更好地理解IoC容器的實現。
第15章使用Java的Socket通信、多執行緒等知識,開發了一個仿QQ遊戲大廳的框架,在此框架的基礎上,可以加入不同的遊戲組件,本章主要演示開發了一個網路五子棋與聊天室的組件。
創作本書還有一個目的:為瘋狂Java體系的《瘋狂Java講義》課後習題提供一份“非標準”參考答案,雖然軟體編程並沒有所謂的“標準答案”,但瘋狂Java聯盟上經常有網友提出:希望看到《瘋狂Java講義》課後習題的參考答案,所以筆者精心編寫了這15個項目,希望能給廣大讀者提供一些參考和借鑑。如果讀者在閱讀本書過程中遇到不懂的技術問題,可以登錄瘋狂Java聯盟獲得幫助。
本書的特點和優勢
本書由具有多年開發經驗的Java工程師編寫,作者在Java領域具有多年的開發研究經驗。本書沒有詳細介紹Java是什麼、Java語法知識這些基本理論,本書介紹的是Java能做什麼、如何運用Java編寫實際項目?本書匯集了作者精心編寫的15個Java項目,總共6萬多行Java代碼,具有很高的學習、參考價值。
本書特點如下:
1.項目全面、貼近實際
本書包括大量的Java項目:仿QQ遊戲大廳、單機連連看、MySQL管理器、郵件客戶端、多執行緒斷點下載工具......項目由淺入深,這些實用的項目將充分激發讀者的學習激情,讓讀者在瘋狂實戰中享受Java編程酣暢淋漓的快感。
2.知識覆蓋廣、學以致用
本書的項目覆蓋了大量的Java知識點,包括Swing編程、JDBC、Socket網路通信、多執行緒、Java反射和JavaMail等。但本書的獨到之處在於:並非簡單地介紹這些知識,而是以“項目驅動”的方式進行介紹,力求讓讀者做到“開發一個項目、掌握一套知識點”。
3.講解詳細,啟發性強
本書將重點解決大部分Java學習者的學習困擾:語法會了,動手編程卻沒思路!本書不僅要教讀者使用Java語言開發項目,更向讀者介紹程式開發的思路,希望啟發讀者的編程思路,帶領讀者步入編程的殿堂。
本書讀者對象
本書大部分篇幅是介紹如何運行Java語言來開發實際項目,因此對Java語言本身語法細節介紹的比較少,因此需要讀者有一定的Java語言基礎。如果讀者對Java語言本身的基礎還不紮實,建議先閱讀瘋狂Java體系的《瘋狂Java講義》一書。
本書將非常適合以下三類讀者,:
1.已經學習過Java語法知識,有一定Java語言基礎的讀者;
2.掌握了Java編程的語法知識,但實際動手開發卻感到困難重重的讀者;
3.需要使用Java進行實際開發,尤其是需要開發桌面程式、遊戲的讀者。
本書服務與致謝
在本書創作過程中得到了博文視點朱沭紅老師的悉心指導,除此之外,中企開源的技術經理伍巧雲、北京中通軟聯資深架構師陳操、中企開源系統設計師李賢棣、鐘永生等也為本書的編寫提供了幫助,在此表示衷心的感謝。同時感謝我的太太鄧素群在成書過程中給予筆者的照顧與關懷。
本書由李剛指導,楊恩雄、麥凱翔編著,參與本書編寫的還有的還有雷雄軍、劉琴、陳正偉、袁達穩、王斌、葉桂平、羅宇航和鄧素群。
對於書中內容及編排我們力求精益求精,但錯誤及疏忽之處在所難免,敬請廣大讀者批評指正。
楊恩雄

圖書目錄

第1章 控制台五子棋 1
1.1 引言 2
1.1.1 五子棋介紹 2
1.1.2 輸入輸出約定 2
1.2 遊戲流程描述 3
1.2.1 玩家輸入坐標 3
1.2.2 “電腦”下棋 4
1.3 創建遊戲的各個對象 4
1.3.1 Chessboard類 5
1.3.2 Chessman類 6
1.3.3 GobangGame類 6
1.4 棋盤類實現 7
1.4.1 初始化棋盤 7
1.4.2 輸出棋盤 8
1.4.3 獲取棋盤 9
1.5 棋子枚舉類實現 9
1.6 遊戲類實現 11
1.6.1 使用BufferedReader獲取鍵盤輸入 11
1.6.2 驗證玩家輸入字元串的合法性 12
1.6.3 判斷輸贏 13
1.6.4 “電腦”隨機下棋 15
1.6.5 是否重新遊戲 16
1.6.6 遊戲過程實現 16
1.7 本章小結 18
第2章 仿Windows計算器 19
2.1 仿Windows計算器概述 20
2.1.1 數學符號與其他符號介紹 20
2.1.2 界面說明 21
2.2 流程描述 21
2.3 建立計算器對象 22
2.3.1 MyMath工具類 22
2.3.2 CalService類 23
2.3.3 CalFrame類 24
2.4 MyMath工具類實現 24
2.5 計算器主界面 25
2.5.1 初始化界面(initialize()方法) 26
2.5.2 創建運算鍵 28
2.5.3 創建操作按鍵 29
2.5.4 增加事件監聽器 30
2.6 計算業務處理 31
2.6.1 計算四則運算結果 31
2.6.2 存儲操作 33
2.6.3 實現開方、求倒數等 34
2.6.4 實現回退操作 35
2.6.5 清除計算結果 35
2.6.6 實現中轉方法(callMethod) 35
2.7 本章小結 36
第3章 圖片瀏覽器 37
3.1 圖片瀏覽器概述 38
3.2 創建圖片瀏覽器的相關對象 38
3.2.1 檔案過濾器 39
3.2.2 檔案對話框 39
3.2.3 主界面類 40
3.2.4 業務處理類 40
3.2.5 操作處理類 40
3.3 創建主界面 41
3.3.1 初始化界面(init()方法) 41
3.3.2 創建選單欄 41
3.3.3 創建工具列 43
3.4 實現圖片瀏覽的操作 44
3.4.1 實現工具列單擊 44
3.4.2 實現選單的單擊 47
3.4.3 打開圖片 48
3.4.4 放大或者縮小圖片 49
3.4.5 瀏覽“上一張”或“下一張”
1.6.1 圖片 49
3.5 檔案選擇與過濾 50
3.6 本章小結 51
第4章 桌面彈球 52
4.1 桌面彈球概述 53
4.1.1 動畫原理 53
4.1.2 小球反彈的方向 53
4.2 流程描述 54
4.3 創建遊戲對象 54
4.3.1 基類BallComponent 55
4.3.2 磚塊類(Brick) 56
4.3.3 道具類及其子類(Magic) 57
4.3.4 擋板類(Stick) 57
4.3.5 小球類(Ball) 57
4.3.6 業務處理類(BallService) 58
4.3.7 主界面類(BallFrame) 59
4.4 主界面實現 59
4.4.1 初始化界面(initialize()方法) 60
4.4.2 單態模式簡介 61
4.4.3 運行效果 61
4.4.4 監聽器與Timer 62
4.5 擋板、小球、磚塊、道具 63
4.5.1 擋板(Stick類) 63
4.5.2 小球(Ball類) 65
4.5.3 道具(Magic及其子類) 66
4.5.4 磚塊(Brick類) 67
4.6 BallService類實現 68
4.6.1 創建與設定磚塊 68
4.6.2 設定擋板的位置(移動擋板) 70
4.6.3 小球與磚塊碰撞 71
4.6.4 小球、道具與擋板碰撞 73
4.6.5 道具的移動 73
4.6.6 改變擋板的長度(道具的作用) 74
4.6.7 判斷是否已經通關 75
4.7 功能改進設計 76
4.7.1 關卡 77
4.7.2 計分 77
4.7.3 道具 77
4.8 本章小結 78
第5章 單機俄羅斯方塊 79
5.1 俄羅斯方塊簡介 80
5.2 建立界面 80
5.2.1 方塊堆砌界面 80
5.2.2 遊戲界面 80
5.3 創建遊戲對象 82
5.3.1 設計小方塊對象 82
5.3.2 設計大方塊對象 83
5.4 創建與顯示大方塊 86
5.4.1 隨機讀取小方塊圖片 86
5.4.2 創建大方塊對象 87
5.4.3 顯示當前方塊 89
5.5 處理方塊的行為 91
5.5.1 方塊變化 91
5.5.2 方塊的左移和右移 93
5.5.3 方塊下降 94
5.5.4 方塊快速下降 95
5.5.5 判斷是否停止下降 96
5.5.6 創建界面的二維數組 96
5.5.7 判斷是否遇到障礙 98
5.5.8 方塊結束下降 100
5.6 消除行、計分與級別的提升 100
5.6.1 消除行 100
5.6.2 加入分數計算與級別提升 102
5.7 遊戲操作 103
5.7.1 遊戲的暫停 103
5.7.2 遊戲的繼續 104
5.7.3 判斷遊戲失敗 104
5.8 本章小結 104
第6章 仿Windows畫圖 105
6.1 畫圖軟體概述 106
6.2 畫圖工具原理 106
6.2.1 畫線 106
6.2.2 其他畫圖功能 107
6.2.3 保存圖片功能 107
6.3 創建畫圖工具的各個對象 107
6.3.1 工具接口Tool 108
6.3.2 Tool的實現類AbstractTool 109
6.3.3 AbstractTool的子類 110
6.3.4 界面類ImageFrame 110
6.3.5 業務邏輯類ImageService 111
6.3.6 檔案選擇類
6.3.6 ImageFileChooser 111
6.4 主界面實現 112
6.4.1 初始化界面(init()方法) 112
6.4.2 獲取畫板 114
6.4.3 創建選單 114
6.4.4 創建畫圖工具列 116
6.4.5 創建顏色選擇面板 118
6.5 工具實現 119
6.5.1 實現拖動框線改變畫布大小 120
6.5.2 實現父類的畫圖方法 121
6.5.3 滑鼠移動時改變指針 122
6.5.4 記錄滑鼠按下的位置 123
6.5.5 重繪圖片 123
6.5.6 鉛筆工具 124
6.5.7 直線工具、矩形工具、橢圓工具和圓角矩形工具 124
6.5.8 多邊形工具 126
6.5.9 刷子與橡皮擦 128
6.5.10 噴槍工具 129
6.6 ImageService類的實現 130
6.6.1 打開圖片檔案 130
6.6.2 保存圖片 131
6.6.3 新建圖片 132
6.6.4 顏色剪輯器 133
6.6.5 檔案過濾 133
6.6.6 根據對選單的單擊調用相應
1.6.1 的方法 134
6.6.7 判斷圖片是否已經保存 135
6.7 本章小結 135
第7章 單機連連看 136
7.1 連連看遊戲簡介 137
7.2 連連看遊戲原理 137
7.3 創建遊戲界面與遊戲區域 137
7.3.1 創建遊戲界面 137
7.3.2 遊戲區域實現原理 138
7.3.3 創建圖片方塊對象 138
7.3.4 創建遊戲處理類 140
7.3.5 圖片的讀取 140
7.3.6 創建遊戲區域圖片數組 143
7.3.7 根據數組畫遊戲區域 144
7.3.8 隨機初始化遊戲 145
7.4 實現連線程式 147
7.4.1 圖片選擇 147
7.4.2 創建連線的相關對象 149
7.4.3 準備獲取通道的工具方法 151
7.4.4 沒有轉折點的橫向連線 152
7.4.5 沒有轉折點的縱向連線 154
7.4.6 一個轉折點的連線 155
7.4.7 兩個轉折點的連線 157
7.4.8 找出最短距離 162
7.4.9 畫上連線線 164
7.5 加入計分與計時功能 165
7.5.1 加入計分功能 165
7.5.2 加入計時功能與遊戲的勝利、失敗 166
7.6 本章小結 168
第8章 簡單Java IDE工具 169
8.1 IDE工具簡介 170
8.2 Java IDE的主要功能 170
8.3 建立界面 170
8.3.1 建立主編輯區和信息顯示區 171
8.3.2 建立項目顯示區 172
8.3.3 添加選單和工具列 173
8.3.4 建立工作空間選擇界面 176
8.3.5 建立檔案、目錄和項目添加界面 177
8.4 實現工作空間選擇功能 178
8.4.1 實現目錄選擇功能 178
8.4.2 實現工作空間選擇的確定按鈕 181
8.5 創建項目樹 182
8.5.1 創建樹的各個對象 182
8.5.2 實現創建項目樹的功能 184
8.5.3 設定樹的外觀 188
8.5.4 實現樹節點的選擇事件 190
8.6 實現檔案操作功能 192
8.6.1 新建檔案 192
8.6.2 新建目錄 197
8.6.3 新建項目 198
8.6.4 策略模式 201
8.6.5 檔案打開 201
8.6.6 顯示行數與高亮 211
8.6.7 檔案的保存功能 216
8.6.8 運行Java檔案 221
8.7 實現文本操作 223
8.8 本章小結 223
第9章 圖書進銷存系統 224
9.1 項目簡介 225
9.2 建立界面 225
9.2.1 登錄界面 225
9.2.2 銷售管理界面 225
9.2.3 入庫管理界面 227
9.2.4 書本管理界面 227
9.2.5 種類管理界面 228
9.2.6 出版社管理界面 229
9.2.7 修改界面代碼 230
9.3 設計系統資料庫 233
9.3.1 設計出版社表 233
9.3.2 設計種類表 234
9.3.3 設計書表 234
9.3.4 設計入庫記錄表 235
9.3.5 設計銷售記錄表 236
9.4 開發前的準備工作 237
9.4.1 設計表的對應類 237
9.4.2 編寫配置讀取類 239
9.4.3 編寫JDBC操作類 240
9.4.4 創建數據轉換工具類 243
9.5 出版社管理功能 244
9.5.1 分層結構 244
9.5.2 獲取全部出版社 245
9.5.3 模糊查詢 248
9.5.4 查看出版社 250
9.5.5 新增出版社 252
9.5.6 修改出版社 255
9.6 書本管理功能 256
9.6.1 獲取全部書 256
9.6.2 查看書本 258
9.6.3 新增書本 260
9.6.4 圖片上傳功能 261
9.7 銷售管理功能 264
9.7.1 銷售記錄列表 264
9.7.2 查看交易記錄 267
9.7.3 實現新增交易記錄功能 270
9.8 本章小結 273
第10章 事務跟蹤系統 274
10.1 確定系統需求 275
10.2 建立界面 275
10.2.1 登錄界面 275
10.2.2 我的事務界面 276
10.2.3 事務的完成、暫時不做、不做
10.2.3 的處理界面 277
10.2.4 事務轉發界面 278
10.2.5 事務管理界面 278
10.2.6 新建事務界面 279
10.2.7 用戶選擇界面 280
10.2.8 用戶管理界面 281
10.2.9 新建用戶界面 282
10.3 開發準備 282
10.3.1 數據轉換工具類 282
10.3.2 資料庫執行類 284
10.3.3 DAO層的基類 285
10.3.4 值對象基類 285
10.4 用戶管理 286
10.4.1 設計用戶管理的相關對象 286
10.4.2 用戶登錄 287
10.4.3 查找全部用戶 290
10.4.4 新增用戶功能 292
10.4.5 刪除用戶 293
10.4.6 查詢用戶 293
10.5 事務管理 294
10.5.1 設計事務對象 294
10.5.2 根據發起人查找事務 295
10.5.3 新建事務 297
10.5.4 催辦事務 298
10.5.5 將事務置為無效 300
10.6 我的事務 301
10.6.1 設計其他對象 301
10.6.2 將事務設為“暫時不做”狀態 302
10.6.3 將事務置為“不做”狀態 305
10.6.4 完成事務 306
10.6.5 轉發事務 307
10.6.6 查看事務 308
10.6.7 查詢事務 310
10.7 本章小結 311
第11章 多執行緒下載工具 312
11.1 多執行緒下載工具簡介 313
11.2 建立下載工具的界面 313
11.2.1 主界面 313
11.2.2 導航樹 314
11.2.3 資源列表 316
11.2.4 資源信息顯示 318
11.2.5 新建下載任務界面 319
11.2.6 懸浮視窗 319
11.2.7 系統列圖示 322
11.3 設計下載的相關對象 322
11.3.1 資源狀態對象 322
11.3.2 塊對象 323
11.3.3 資源對象 324
11.3.4 上下文對象 327
11.4 下載資源 329
11.4.1 界面新增下載資源 329
11.4.2 建立下載執行緒 331
11.4.3 進行檔案分割 333
11.4.4 檔案合併 336
11.4.5 暫停下載 337
11.4.6 繼續下載 337
11.5 保存下載信息 339
11.5.1 進行序列化保存對象 339
11.5.2 反序列化 340
11.6 其他操作 341
11.6.1 查看任務 341
11.6.2 刪除任務 342
11.6.3 刪除已經完成的任務 343
11.6.4 開始全部任務 343
11.6.5 暫停全部任務 344
11.6.6 節點的單擊 344
11.6.7 打開/關閉主視窗 345
11.7 本章小結 345
第12章 郵件客戶端 346
12.1 本章涉及的技術 347
12.1.1 JavaMail簡介 347
12.1.2 SMTP簡介 347
12.1.3 POP3簡介 347
12.1.4 XStream簡介 347
12.2 建立界面 348
12.2.1 登錄界面 348
12.2.2 客戶端主界面 348
12.2.3 配置界面 352
12.2.4 郵件編寫界面 353
12.3 創建客戶端的基礎對象 354
12.3.1 創建信箱上下文對象 355
12.3.2 創建郵件對象 356
12.4 用戶登錄與用戶配置 358
12.4.1 實現用戶登錄 358
12.4.2 實現用戶信息配置 360
12.5 接收郵件 362
12.5.1 接收郵件 362
12.5.2 獲取郵件的正文 364
12.5.3 獲取郵件的收件人 365
12.5.4 獲取郵件的發件人 365
12.5.5 獲取郵件的傳送日期 366
12.5.6 獲取郵件的大小 366
12.5.7 獲取郵件的抄送地址 366
12.5.8 獲取附屬檔案並存放到本地的目錄中 367
12.5.9 將Message封裝為Mail 368
12.5.10 對郵件進行排序 369
12.5.11 刪除郵件伺服器上的郵件 370
12.5.12 將Mail對象轉換成XML
12.5.11 檔案並保存到本地目錄中 371
12.5.13 在界面中顯示郵件 372
12.5.14 編寫任務調度器接收郵件 375
12.6 初始化界面數據 376
12.6.1 將XML檔案轉換為Mail對象 376
12.6.2 在各個Box間切換 378
12.7 操作郵件 380
12.7.1 查看郵件 380
12.7.2 查看附屬檔案 382
12.7.3 刪除郵件 385
12.7.4 徹底刪除郵件 385
12.7.5 還原郵件 386
12.8 傳送郵件 387
12.8.1 實現傳送郵件的功能 388
12.8.2 界面封裝Mail對象進行傳送 390
12.8.3 處理郵件附屬檔案 391
12.8.4 測試傳送郵件功能 392
12.8.5 處理郵件的其他功能 393
12.9 本章小結 393
第13章 MySQL管理器 394
13.1 MySQL管理器原理 395
13.2 建立界面 395
13.2.1 MySQL安裝目錄選擇界面 396
13.2.2 主界面 396
13.2.3 數據顯示界面 401
13.2.4 創建連線界面 403
13.2.5 創建表界面 404
13.2.6 視圖界面 407
13.2.7 存儲過程界面 407
13.2.8 查詢界面 408
13.2.9 樹節點右鍵選單 408
13.2.10 數據列表右鍵選單 408
13.3 實現MySQL安裝目錄選擇功能 410
13.3.1 實現目錄選擇 410
13.3.2 讀取和保存安裝目錄路徑 411
13.3.3 讀取連線信息 411
13.4 連線管理 413
13.4.1 創建連線節點 413
13.4.2 打開連線 414
13.4.3 新建連線 417
13.4.4 刪除連線 419
13.4.5 關閉連線 420
13.5 資料庫管理 420
13.5.1 打開資料庫 421
13.5.2 新建資料庫 422
13.5.3 刪除資料庫 423
13.5.4 關閉資料庫 423
13.6 視圖管理 424
13.6.1 讀取視圖列表 424
13.6.2 新建視圖 426
13.6.3 修改視圖與刪除視圖 427
13.7 存儲過程與函式管理 427
13.7.1 新增存儲過程和函式 427
13.7.2 修改存儲過程與函式 428
13.8 表管理 429
13.8.1 新欄位 430
13.8.2 插入欄位與刪除欄位 431
13.8.3 編輯欄位 432
13.8.4 設定默認值與自動增長 434
13.8.5 新外鍵 435
13.8.6 刪除一個外鍵 436
13.8.7 查詢欄位信息 436
13.8.8 查詢外鍵信息 437
13.8.9 新建表 439
13.8.10 修改表 440
13.8.11 刪除表 442
13.9 數據瀏覽 442
13.9.1 瀏覽數據 443
13.9.2 刷新數據 445
13.9.3 數據排序 445
13.10 執行SQL語句 446
13.10.1 運行SQL語句 446
13.10.2 保存SQL語句 447
13.11 SQL檔案的導入與導出 447
13.11.1 執行SQL檔案 447
13.11.2 導出資料庫與表 448
13.12 本章小結 449
第14章 自己開發IoC容器 450
14.1 IoC簡介 451
14.2 使用技術簡介 451
14.2.1 Java反射簡介 451
14.2.2 Dom4j 452
14.2.3 JUnit 452
14.3 確定配置檔案內容、編寫DTD 452
14.3.1 聲明bean 452
14.3.2 聲明單態的bean 453
14.3.3 聲明延遲載入 453
14.3.4 聲明設值注入到bean的屬性 453
14.3.5 聲明構造注入到bean的屬性 454
14.3.6 自動裝配 455
14.3.7 準備DTD檔案 455
14.4 讀取XML檔案 457
14.4.1 載入XML檔案 457
14.4.2 讀取Element 460
14.4.3 解析Element 462
14.4.4 實現isLazy方法 464
14.4.5 實現getConstructorElements方法 465
14.4.6 實現getAttribute和isSingleton方法 465
14.4.7 實現getAutowire方法 466
14.4.8 實現getConstructorValue和getPropertyValue方法 466
14.5 使用構造注入創建實例 468
14.5.1 構造注入簡介 468
14.5.2 使用無參數的構造器創建實例 468
14.5.3 使用有參數的構造器創建實例 469
14.6 實現設值注入 473
14.6.1 實現非自動裝配的設值注入 473
14.6.2 實現根據名字自動裝配 478
14.7 實現IoC容器 480
14.7.1 定義接口方法 481
14.7.2 實現containsBean方法和isSingleton方法 482
14.7.3 實現getBean方法 483
14.7.4 為AbstractApplicationContext添加子類 488
14.7.5 測試IoC容器的創建 490
14.8 IoC與圖書進銷存系統的整合 495
14.8.1 需要管理的對象 495
14.8.2 創建數據訪問層的bean 496
14.8.3 創建業務層的bean 497
14.8.4 創建視圖層的bean 499
14.9 本章小結 502
第15章 仿QQ遊戲大廳 503
15.1 遊戲大廳簡介 504
15.2 編寫遊戲大廳框架 504
15.2.1 確定傳輸格式 504
15.2.2 建立處理類接口 506
15.2.3 建立玩家類與遊戲接口 506
15.2.4 編寫框架伺服器 507
15.2.5 編寫框架客戶端 509
15.2.6 建立登錄界面 509
15.2.7 實現登錄功能 511
15.3 建立五子棋遊戲大廳 512
15.3.1 編寫遊戲大廳的對象 512
15.3.2 伺服器創建遊戲大廳數組 514
15.3.3 玩家進入遊戲大廳 515
15.3.4 創建遊戲大廳界面 516
15.3.5 創建玩家列表與聊天界面 519
15.3.6 使用伺服器的數據創建遊戲大廳 520
15.4 實現聊天功能 522
15.4.1 傳送聊天信息 522
15.4.2 接收聊天信息 524
15.5 啟動遊戲 524
15.5.1 建立遊戲界面 525
15.5.2 玩家坐下 526
15.5.3 實現遊戲聊天 531
15.6 開始遊戲 532
15.6.1 遊戲準備 532
15.6.2 玩家下棋 536
15.6.3 逃跑與認輸 539
15.6.4 請求和棋 540
15.7 五子棋遊戲大廳總結 541
15.8 編寫一個測試聊天室 542
15.8.1 建立聊天室界面 542
15.8.2 實現聊天室 543
15.8.3 將聊天室放置到框架中測試 543
15.9 本章小結 544

相關詞條

熱門詞條

聯絡我們