從8月1號開始,整整一個月,初稿完成,朋友幫我第一次文字校對完成,如今正在根據波總的意見修改一些jfinal的設計原則說明前端
Jfinal、JfinalUIB學習交流QQ羣:309647612java
已經完成,前四章免費閱讀,內容會持續按期更新,緊隨Jfinal的發展,但願你們看看作出評價,謝謝!
-----------------------------------------------------------------------nginx
百度閱讀地址 :http://yuedu.baidu.com/ebook/3fc54b55d5bbfd0a7956739fgit
JFinal極速開發實戰 web
爲何要寫這本書 3
讀者對象 3
能學到什麼 4
如何閱讀這本書 4
勘誤和支持 4
致謝 5
1 初識JFinal 18
1.1 JFinal的簡介 18
1.2 JFinal的特色 18
1.3 JFinal下載 18
2 搭建開發環境 19
2.1 開發環境要求 19
2.2 下載安裝配置JDK 20
2.2.1 下載地址 20
2.2.2 選擇平臺類型 20
2.2.3 安裝JDK 21
2.2.4 配置環境變量 21
2.2.5 JVM參數 22
2.2.6 Java VisualVM 23
2.3 下載安裝配置Eclipse 26
2.3.1 打開主頁 26
2.3.2 選擇平臺類型 27
2.3.3 點擊下載 27
2.3.4 安裝eclipse 28
2.3.5 啓動eclipse 28
2.3.6 添加JDK到eclipse 28
2.3.7 設置JDK編譯級別 30
2.3.8 設置文件編碼 30
2.4 下載安裝配置Maven 32
2.4.1 下載maven 32
2.4.2 配置maven 32
2.4.3 eclipse整合maven 35
2.5 下載安裝配置TomcatPlugin 37
2.5.1 打開主頁 37
2.5.2 下載tomcatPlugin 37
2.5.3 安裝tomcatPlugin 37
2.5.4 下載tomcat 38
2.5.5 安裝配置tomcat 39
2.5.6 整合tomcatPlugin和tomcat 39
2.5.7 設置tomcat的JVM 40
2.6 嵌入式Tomcat 41
2.6.1 打開主頁 41
2.6.2 配置項目 42
2.6.3 編寫啓動類 44
2.6.4 啓動測試 45
2.7 熱部署神器之Jrebel 45
2.7.1 打開主頁 46
2.7.2 下載eclipse插件包 46
2.7.3 Eclipse中安裝update-site-6.2.1.zip 47
2.7.4 破解jrebel 49
2.7.5 設置jvm的jrebel代理 52
2.8 熱部署神器之springloaded 52
2.8.1 打開主頁 52
2.8.2 下載springloaded-xxx.jar包 52
2.8.3 安裝配置 53
2.8.4 啓用jvm的springloaded代理 53
3 導入示例項目 54
3.1 eclipse導入Jfinal demo項目 54
3.1.1 解壓Jfinal_demo.zip 54
3.1.2 導入項目 54
3.2 eclipse導入Jfinal demo for maven項目 57
3.2.1 解壓Jfinal_demo_for_maven.zip 57
3.2.2 Eclipse導入maven項目 58
3.2.3 導入後的項目視圖 60
3.3 使用eclipse git下載JfinalUIB項目 60
3.3.1 項目地址 60
3.3.2 打開git視圖 61
3.3.3 使用git下載 63
3.3.4 使用git更新 66
4 運行項目方式 67
4.1 Jetty運行Jfinal demo 67
4.1.1 建立數據庫 67
4.1.2 配置數據庫鏈接 68
4.1.3 啓動項目 68
4.1.4 訪問項目 69
4.1.5 這是錯誤嗎? 70
4.1.6 移出jetty-server-8.1.8.jar 70
4.2 TomcatEclipsePlugin運行Jfinal demo 71
4.2.1 數據庫配置 71
4.2.2 修改tomcat/conf/server.xml 71
4.2.3 刪除jetty-server-8.1.8.jar 71
4.2.4 啓動tomcat 72
4.2.5 訪問項目 74
4.2.6 啓用熱部署 75
4.3 Tomcat Embedded運行Jfinal demo 76
4.3.1 數據庫配置 76
4.3.2 添加應用路徑 76
4.3.3 啓動項目 77
4.3.4 訪問項目 77
4.3.5 啓用熱部署 77
4.4 Jetty運行Jfinal demo for maven 78
4.4.1 數據庫配置 78
4.4.2 啓動項目 78
4.4.3 訪問項目 79
4.5 Mvn jetty:run運行Jfinal demo for maven 79
4.5.1 數據庫配置 79
4.5.2 pom.xml配置 79
4.5.3 啓動項目方式一 80
4.5.4 啓動項目方式二 80
4.5.5 訪問項目 81
4.6 Mvn tomcat7:run運行Jfinal demo for maven 81
4.6.1 數據庫配置 82
4.6.2 pom.xml配置 82
4.6.3 啓動項目方式一 82
4.6.4 啓動項目方式二 82
4.6.5 訪問項目 84
4.7 Eclipse自帶server運行Jfinal demo for maven 84
4.7.1 數據庫配置 84
4.7.2 從新解壓一個tomcat 84
4.7.3 查找Server視圖 84
4.7.4 配置Server 86
4.7.5 修改項目路徑 89
4.7.6 自動發佈和啓動超時 90
4.7.7 啓動項目 91
4.7.8 訪問項目 91
4.7.9 啓用熱部署 91
4.8 配置運行JfinalUIB 93
4.8.1 配置數據庫 93
4.8.2 修改數據庫鏈接 97
4.8.3 啓動項目 98
4.8.4 訪問項目 99
4.8.5 啓用熱部署 100
4.9 使用idea開發JfinalUIB項目 100
4.9.1 安裝配置git 101
4.9.2 使用git下載 102
4.9.3 導入並啓動項目 102
4.10 建立並運行普通java web項目 106
4.10.1 建立一個Dynamic Web Project 106
4.10.2 修改編譯路徑 109
4.10.3 加入JFinal支持 111
4.10.4 啓動並測試 114
4.11 建立並運行maven版java web項目 116
4.11.1 建立一個Maven Project 116
4.11.2 加入JFinal支持 119
4.11.3 啓動並測試 121
5 部署項目 121
5.1 項目打包 121
5.1.1 項目結構 121
5.1.2 打包jfinal_demo 122
5.1.3 打包JfinalUIB 122
5.2 項目部署到tomcat 122
5.2.1 安裝tomcat 122
5.2.2 修改默認端口 123
5.2.3 部署項目 123
5.2.4 設置tomcat內存大小 124
5.2.5 啓動tomcat 124
5.3 項目部署到jetty 124
5.3.1 安裝jetty 124
5.3.2 修改默認端口 125
5.3.3 部署項目 125
5.3.4 啓動Jetty 125
5.3.5 設置Jetty內存大小 126
5.4 項目部署到resin 126
5.4.1 安裝resin 126
5.4.2 修改默認端口 127
5.4.3 部署項目 127
5.4.4 設置resin內存大小 127
5.4.5 啓動resin 128
5.5 整合nginx 129
5.5.1 下載nginx 129
5.5.2 安裝nginx 130
5.5.3 啓動nginx 130
5.5.4 在hosts文件中配置域名 131
5.5.5 整合servlet容器 132
5.5.6 負載均衡 135
5.6 遠程調試 137
5.6.1 服務端Tomcat、Resin、Jetty配置 137
5.6.2 本地eclipse進行調試 138
5.6.3 本地idea進行調試 140
6 JFinal快速入門 142
6.1 JFinal整體架構圖 142
6.2 入口控制類JfinalConfig 143
6.2.1 configConstant 143
6.2.2 configRoute 144
6.2.3 configPlugin 147
6.2.4 configInterceptor 148
6.2.5 configHandler 149
6.2.6 afterJfinalStart 149
6.2.7 beforeJfinalStop 150
6.3 MVC控制器Controller 151
6.3.1 Action 151
6.3.2 Action中獲取請求參數 152
6.3.3 Action中請求參數實例化model 153
6.3.4 Action中獲取上傳文件 154
6.3.5 Action中操做request的attribute 155
6.3.6 Action中操做Session 155
6.3.7 Action中的render 155
6.4 數據校驗Validator 158
6.4.1 驗證器示例 158
6.4.2 驗證器調用 160
6.4.3 validate方法擴展 160
6.5 數據庫操做ActiveRecord 162
6.5.1 什麼是ActiveRecord 162
6.5.2 ActiveRecordPlugin 163
6.5.3 Model 165
6.5.4 Db + Record 169
6.5.5 ICallback 174
6.5.6 事務控制 176
6.5.7 數據庫支持 177
6.5.8 多數據源 178
6.6 緩存的配置使用 179
6.6.1 整合使用Ehcache 179
6.6.2 整合使用Redis 183
6.7 國際化 184
6.7.1 資源文件編輯器 184
6.7.2 資源文件操做 185
6.7.3 I18nInterceptor 186
6.8 經常使用工具類 187
6.8.1 PropKit 187
6.8.2 FileKit 188
6.8.3 HandlerKit 188
6.8.4 HashKit 189
6.8.5 HttpKit 190
6.8.6 JsonKit 191
6.8.7 PathKit 191
6.8.8 Ret 192
6.8.9 LogKit 193
6.8.10 StrKit 193
6.8.11 Sqls 193
6.8.12 DbKit 194
7 實戰項目之項目設計 196
7.1 數據處理流程 196
7.1.1 數據處理流程圖 196
7.1.2 核心處理類說明 197
7.2 項目結構 199
7.2.1 platform源碼包 200
7.2.2 junit源碼包 201
7.2.3 WebContent文件夾 201
7.3 功能模塊 202
7.3.1 用戶管理 202
7.3.2 分組管理 203
7.3.3 角色管理 203
7.3.4 崗位管理 203
7.3.5 功能管理 204
7.3.6 系統管理 204
7.4 數據庫 204
7.4.1 安裝ERMaster 205
7.4.2 用戶權限表 205
7.4.3 其餘表 206
7.5 Base類 207
7.5.1 BaseController 207
7.5.2 BaseService 210
7.5.3 BaseModel 214
7.6 前端和後端交互 220
7.6.1 單頁面應用 221
7.6.2 頁面交互流程 222
7.6.3 交互架構的演變 222
8 實戰項目之擴展開發 223
8.1 Controller、Model自動註冊 223
8.1.1 定義Controller註解 223
8.1.2 應用Controller註解 224
8.1.3 掃描Controller註解 224
8.1.4 定義Model註解 226
8.1.5 應用Model註解 227
8.1.6 掃描Model註解 227
8.2 Controller全局參數封裝 228
8.2.1 定義攔截器 229
8.2.2 request取值到Controller變量 229
8.2.3 Controller變量值返回request 231
8.3 支持distinct分頁 232
8.3.1 普通分頁存在的問題 232
8.3.2 自定義分頁方法 235
8.3.3 調用分頁方法 237
8.4 高仿mybatis動態SQL管理 238
8.4.1 .sql.xml文件定義 238
8.4.2 加載.sql.xml文件 239
8.4.3 獲取靜態sql 241
8.4.4 獲取動態sql 242
8.4.5 獲取動態預處理sql 243
8.5 格式化輸出SQL和預處理參數輸出 245
8.5.1 開啓Sql打印 246
8.5.2 Sql格式化工具類 246
8.5.3 Sql格式化輸出 246
8.5.4 Sql參數輸出 247
8.5.5 Sql和參數輸出效果 248
8.6 樂觀鎖控制 249
8.6.1 什麼是樂觀鎖 250
8.6.2 樂觀鎖設計 250
8.6.3 樂觀鎖實現 250
8.6.4 樂觀鎖應用 254
8.7 請求耗時計算 254
8.7.1 總耗時 254
8.7.2 Render耗時 256
8.8 國際化 257
8.8.1 國際化內容 257
8.8.2 國際化資源文件編輯 257
8.8.3 國際化資源文件加載 258
8.8.4 國際化資源文件讀取 261
8.8.5 國際化的模板取值 262
8.9 使用Junit作單元測試 263
8.9.1 單元測試基礎類TestBase 263
8.9.2 測試示例 266
8.10 代碼生成器 267
8.10.1 設計目標 267
8.10.2 設計實現思路 267
8.10.3 模板定義 268
8.10.4 應用示例 274
8.11 表單數組提交 276
8.11.1 getModel方法 276
8.11.2 getModel源碼分析 277
8.11.3 擴展實現 278
8.11.4 增長到BaseController 279
8.11.5 應用示例 280
8.12 表單重複提交 280
8.12.1 常見的處理手段 280
8.12.2 JfinalUIB中作了哪些工做 281
8.13 統一異常處理 282
8.13.1 統一捕獲異常 282
8.13.2 異常提示 283
8.14 Service層事務控制 284
8.14.1 引入cglib作事務邊界控制 285
8.14.2 定義方法事務註解 286
8.14.3 事務代理類 287
8.14.4 應用示例 289
9 實戰項目之業務功能開發 290
9.1 權限設計 290
9.1.1 權限分配流程 290
9.1.2 URL權限 290
9.1.3 按鈕權限 293
9.2 登陸驗證 294
9.2.1 密碼存儲 295
9.2.2 登陸驗證 296
9.2.3 加密登陸cookie 298
9.2.4 解密登陸cookie 300
9.3 分頁詳解 302
9.3.1 頁面查詢參數 303
9.3.2 查詢參數封裝 304
9.3.3 分頁數據處理 306
9.3.4 頁面數據展現 310
9.4 通用表單驗證器 315
9.4.1 Rapido UI的校驗提示 315
9.4.2 擴展Input屬性 317
9.4.3 通用校驗方法 317
9.4.4 Input中的onblur驗證 320
9.4.5 Form總體驗證 320
9.4.6 用戶信息校驗 321
9.5 開發一個新功能 322
9.5.1 表設計 323
9.5.2 文件生成 326
9.5.3 配置Controller和Model 327
9.5.4 修改Action方法 328
9.5.5 Service層單元測試 330
9.5.6 頁面開發 330
9.5.7 錄入功能URL 335
9.5.8 菜單和按鈕受權 337
9.5.9 頁面功能測試 338
10 知識點補充 338
10.1 多數據源事務 338
10.2 getInt、getLong方法 340
10.3 指定Action請求類型 341
10.4 批處理Db.batch方法應用 341
spring