文档章节

JFinal书籍《JFinal极速开发实战》正式发布

littleant
 littleant
发布于 2015/09/18 16:08
字数 2467
阅读 5K
收藏 15

-----------------------------------------------------------------------

百度阅读地址 :http://yuedu.baidu.com/ebook/3fc54b55d5bbfd0a7956739f

前四章免费阅读,内容会持续定期更新,紧随Jfinal的发展,希望大家看看做出评价,谢谢!

试读下载地址:http://down.51cto.com/data/2127288

-----------------------------------------------------------------------

学习交流QQ群 :309647612

书籍整个创作周期从2015年8月1日开始到2015年9月10日,时间仓促,难免有瑕疵,
希望大家能够指出存在的问题,我会不断的更新纠正,谢谢大家!

-----------------------------------------------------------------------

目录

‍Jfinal极速开发实战... 2

为什么要写这本书... 3

读者对象... 3

能学到什么... 4

如何阅读这本书... 4

勘误和支持... 4

致谢... 4

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         添加JDKeclipse. 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         整合tomcatPlugintomcat. 39

2.5.7         设置tomcatJVM... 40

2.6                 嵌入式Tomcat. 41

2.6.1         打开主页... 41

2.6.2         配置项目... 42

2.6.3         编写启动类... 43

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         设置jvmjrebel代理... 52

2.8                 热部署神器之springloaded. 52

2.8.1         打开主页... 52

2.8.2         下载springloaded-xxx.jar... 52

2.8.3         安装配置... 53

2.8.4         启用jvmspringloaded代理... 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下载... 62

3.3.4         使用git更新... 65

4       运行项目方式... 66

4.1                 Jetty运行Jfinal demo. 66

4.1.1         创建数据库... 66

4.1.2         配置数据库连接... 66

4.1.3         启动项目... 67

4.1.4         访问项目... 68

4.1.5         这是错误吗?... 68

4.1.6         移出jetty-server-8.1.8.jar. 69

4.2                 TomcatEclipsePlugin运行Jfinal demo. 69

4.2.1         数据库配置... 70

4.2.2         修改tomcat/conf/server.xml 70

4.2.3         删除jetty-server-8.1.8.jar. 70

4.2.4         启动tomcat. 70

4.2.5         访问项目... 73

4.2.6         启用热部署... 73

4.3                 Tomcat Embedded运行Jfinal demo. 74

4.3.1         数据库配置... 75

4.3.2         添加应用路径... 75

4.3.3         启动项目... 75

4.3.4         访问项目... 75

4.3.5         启用热部署... 75

4.4                 Jetty运行Jfinal demo for maven. 77

4.4.1         数据库配置... 77

4.4.2         启动项目... 77

4.4.3         访问项目... 77

4.5                 Mvn jetty:run运行Jfinal demo for maven. 77

4.5.1         数据库配置... 77

4.5.2         启动项目... 78

4.5.3         访问项目... 79

4.6                 Eclipse自带server运行Jfinal demo for maven. 79

4.6.1         数据库配置... 79

4.6.2         重新解压一个tomcat. 79

4.6.3         查找Server视图... 79

4.6.4         配置Server. 81

4.6.5         修改项目路径... 84

4.6.6         自动发布和启动超时... 85

4.6.7         启动项目... 86

4.6.8         访问项目... 86

4.6.9         启用热部署... 86

4.7                 配置运行JfinalUIB. 88

4.7.1         配置数据库... 88

4.7.2         修改数据库连接... 91

4.7.3         启动项目... 92

4.7.4         访问项目... 93

4.7.5         启用热部署... 94

4.8                 使用idea开发JfinalUIB项目... 94

4.8.1         安装配置git. 94

4.8.2         使用git下载... 95

4.8.3         导入并启动项目... 96

4.9                 创建并运行普通java web项目... 99

4.9.1         创建一个Dynamic Web Project. 99

4.9.2         修改编译路径... 102

4.9.3         加入Jfinal支持... 104

4.9.4         启动并测试... 107

4.10               创建并运行mavenjava web项目... 109

4.10.1                创建一个Maven Project. 109

4.10.2                加入Jfinal支持... 112

4.10.3                启动并测试... 114

5       部署项目... 114

5.1                 项目打包... 114

5.1.1         项目结构... 114

5.1.2         打包jfinal_demo. 115

5.1.3         打包JfinalUIB. 115

5.2                 项目部署到tomcat. 115

5.2.1         安装tomcat. 115

5.2.2         修改默认端口... 116

5.2.3         部署项目... 116

5.2.4         设置tomcat内存大小... 117

5.2.5         启动tomcat. 117

5.3                 项目部署到jetty. 117

5.3.1         安装jetty. 117

5.3.2         修改默认端口... 118

5.3.3         部署项目... 118

5.3.4         启动Jetty. 118

5.3.5         设置Jetty内存大小... 119

5.4                 项目部署到resin. 119

5.4.1         安装resin. 119

5.4.2         修改默认端口... 120

5.4.3         部署项目... 120

5.4.4         设置resin内存大小... 120

5.4.5         启动resin. 121

5.5                 整合nginx. 122

5.5.1         下载nginx. 122

5.5.2         安装nginx. 123

5.5.3         启动nginx. 123

5.5.4         hosts文件中配置域名... 124

5.5.5         整合servlet容器... 125

5.5.6         负载均衡... 128

6       Jfinal快速入门... 130

6.1                 Jfinal总体架构图... 130

6.2                 入口控制类JfinalConfig. 131

6.2.1         configConstant. 131

6.2.2         configRoute. 132

6.2.3         configPlugin. 135

6.2.4         configInterceptor. 135

6.2.5         configHandler. 137

6.2.6         afterJfinalStart. 137

6.2.7         beforeJfinalStop. 138

6.3                 MVC控制器Controller. 139

6.3.1         Action. 139

6.3.2         Action中获取请求参数... 140

6.3.3         Action中请求参数实例化model 141

6.3.4         Action中获取上传文件... 142

6.3.5         Action中操作requestattribute. 143

6.3.6         Action中操作Session. 143

6.3.7         Action中的render. 144

6.4                 数据校验Validator. 146

6.4.1         验证器示例... 146

6.4.2         验证器调用... 148

6.4.3         validate方法扩展... 149

6.5                 数据库操作ActiveRecord. 150

6.5.1         什么是ActiveRecord. 150

6.5.2         ActiveRecordPlugin. 151

6.5.3         Model 153

6.5.4         Db + Record. 157

6.5.5         ICallback. 161

6.5.6         事务控制... 163

6.5.7         各种数据库支持... 165

6.5.8         多数据源... 166

6.6                 缓存的配置使用... 167

6.6.1         整合使用Ehcache. 167

6.6.2         整合使用Redis. 171

6.7                 国际化... 172

6.7.1         资源文件编辑器... 172

6.7.2         资源文件操作... 172

6.7.3         I18nInterceptor. 173

6.8                 常用工具类... 174

6.8.1         PropKit. 174

6.8.2         FileKit. 175

6.8.3         HandlerKit. 176

6.8.4         HashKit. 176

6.8.5         HttpKit. 178

6.8.6         JsonKit. 178

6.8.7         PathKit. 179

6.8.8         Ret. 179

6.8.9         StrKit. 180

6.8.10      Sqls. 180

6.8.11      DbKit. 181

7       实战项目之项目设计... 183

7.1                 数据处理流程... 183

7.1.1         数据处理流程图... 183

7.1.2         核心处理类说明... 184

7.2                 项目结构... 186

7.2.1         platform源码包... 187

7.2.2         junit源码包... 188

7.2.3         WebContent文件夹... 188

7.3                 功能模块... 189

7.3.1         用户管理... 189

7.3.2         分组管理... 190

7.3.3         角色管理... 190

7.3.4         岗位管理... 190

7.3.5         功能管理... 191

7.3.6         系统管理... 191

7.4                 数据库... 191

7.4.1         安装ERMaster. 192

7.4.2         用户权限表... 192

7.4.3         其他表... 193

7.5                 Base... 194

7.5.1         BaseController. 194

7.5.2         BaseService. 197

7.5.3         BaseModel 201

7.6                 前端和后端交互... 207

7.6.1         单页面应用... 208

7.6.2         页面交互流程... 209

7.6.3         交互架构的演变... 209

8       实战项目之扩展开发... 210

8.1                 ControllerModel自动注册... 210

8.1.1         定义Controller注解... 210

8.1.2         应用Controller注解... 211

8.1.3         扫描Controller注解... 211

8.1.4         定义Model注解... 213

8.1.5         应用Model注解... 214

8.1.6         扫描Model注解... 214

8.2                 Controller全局参数封装... 215

8.2.1         定义拦截器... 215

8.2.2         request取值到Controller变量... 216

8.2.3         Controller变量值返回request. 218

8.3                 支持distinct分页... 219

8.3.1         普通分页存在的问题... 219

8.3.2         自定义分页方法... 222

8.3.3         调用分页方法... 224

8.4                 高仿mybatis动态SQL管理... 224

8.4.1         .sql.xml文件定义... 225

8.4.2         加载.sql.xml文件... 226

8.4.3         获取静态sql 228

8.4.4         获取动态sql 229

8.4.5         获取动态预处理sql 230

8.5                 格式化输出SQL和预处理参数输出... 232

8.5.1         开启Sql打印... 232

8.5.2         Sql格式化工具类... 233

8.5.3         Sql格式化输出... 233

8.5.4         Sql参数输出... 234

8.5.5         Sql和参数输出效果... 235

8.6                 乐观锁控制... 236

8.6.1         什么是乐观锁... 236

8.6.2         乐观锁设计... 237

8.6.3         乐观锁实现... 237

8.6.4         乐观锁应用... 240

8.7                 请求耗时计算... 241

8.7.1         总耗时... 241

8.7.2         Render耗时... 243

8.8                 国际化... 243

8.8.1         国际化内容... 244

8.8.2         国际化资源文件编辑... 244

8.8.3         国际化资源文件加载... 244

8.8.4         国际化资源文件读取... 248

8.8.5         国际化的模板取值... 249

8.9                 使用Junit做单元测试... 250

8.9.1         单元测试基础类TestBase. 250

8.9.2         测试示例... 253

8.10               简易代码生成器... 254

8.10.1                设计目标... 254

8.10.2                设计实现思路... 254

8.10.3                模板定义... 255

8.10.4                应用示例... 260

8.11               表单数组提交... 262

8.11.1      getModel方法... 262

8.11.2      getModel源码分析... 263

8.11.3                扩展实现... 264

8.11.4                增加到BaseController. 266

8.11.5                应用示例... 266

8.12               表单重复提交... 267

8.12.1                常见的处理手段... 267

8.12.2      JfinalUIB中做了哪些工作... 268

8.13               统一异常处理... 269

8.13.1                统一捕获异常... 269

8.13.2                异常提示... 270

8.14               Service层事务控制... 271

8.14.1                引入cglib做事务边界控制... 272

8.14.2                定义方法事务注解... 273

8.14.3                事务代理类... 274

8.14.4                应用示例... 276

9       实战项目之业务功能开发... 277

9.1                 权限设计... 277

9.1.1         权限分配流程... 277

9.1.2         URL权限... 277

9.1.3         按钮权限... 280

9.2                 登录验证... 281

9.2.1         密码存储... 282

9.2.2         登录验证... 283

9.2.3         加密登录cookie. 285

9.2.4         解密登录cookie. 287

9.3                 分页详解... 289

9.3.1         页面查询参数... 290

9.3.2         查询参数封装... 291

9.3.3         分页数据处理... 293

9.3.4         页面数据展示... 297

9.4                 通用表单验证器... 302

9.4.1         Rapido UI的校验提示... 302

9.4.2         扩展Input属性... 304

9.4.3         通用校验方法... 304

9.4.4         Input中的onblur验证... 307

9.4.5         Form整体验证... 307

9.4.6         用户信息校验... 308

9.5                 开发一个新功能... 309

9.5.1         表设计... 310

9.5.2         文件生成... 313

9.5.3         配置ControllerModel 314

9.5.4         修改Action方法... 315

9.5.5         Service层单元测试... 317

9.5.6         页面开发... 317

9.5.7         录入功能URL. 322

9.5.8         菜单和按钮授权... 324

9.5.9         页面功能测试... 325

 

© 著作权归作者所有

littleant

littleant

粉丝 277
博文 13
码字总数 10514
作品 1
武汉
高级程序员
私信 提问
加载中

评论(12)

Javen-IJPay
Javen-IJPay
支持 老乡79
littleant
littleant 博主

引用来自“武汉加油”的评论

支持一个,武汉的同志。我是A3的...13
曾经也在A3呆过两年,你该不是华为的吧?
武汉加油
支持一个,武汉的同志。我是A3的...13
铂金蛋蛋
铂金蛋蛋
支持一个~
littleant
littleant 博主

引用来自“IT男哈哈文”的评论

但看目录,这书太简单了吧。能不能更多的深入到源代码级别来剖析

引用来自“littleant”的评论

《XXX实战》的和《XXX技术内幕》这是两种完全不同定位的书哦,不是什么人都有闲情逸致去看源码剖析的,你认为简单说明你java web经验丰富,你去jfinal的圈子看看,小白太多了,他们就需要这样的书。再就是jfinal圈子连一本全面的基础书都没人写,更别谈源码剖析类型的了。

引用来自“IT男哈哈文”的评论

我已购买,jfinal的第一本书,必须得支持,最好是能出纸质版,这样才好收藏。 另祝该书大卖热卖!
谢谢支持!这本书出来十来天,也没做多少宣传,文库看的还不少,其实大家对jfinal的书关注度还是很高的,这本书会持续更新下去
任任任老师
任任任老师

引用来自“IT男哈哈文”的评论

但看目录,这书太简单了吧。能不能更多的深入到源代码级别来剖析

引用来自“littleant”的评论

《XXX实战》的和《XXX技术内幕》这是两种完全不同定位的书哦,不是什么人都有闲情逸致去看源码剖析的,你认为简单说明你java web经验丰富,你去jfinal的圈子看看,小白太多了,他们就需要这样的书。再就是jfinal圈子连一本全面的基础书都没人写,更别谈源码剖析类型的了。
我已购买,jfinal的第一本书,必须得支持,最好是能出纸质版,这样才好收藏。 另祝该书大卖热卖!
littleant
littleant 博主

引用来自“IT男哈哈文”的评论

但看目录,这书太简单了吧。能不能更多的深入到源代码级别来剖析
《XXX实战》的和《XXX技术内幕》这是两种完全不同定位的书哦,不是什么人都有闲情逸致去看源码剖析的,你认为简单说明你java web经验丰富,你去jfinal的圈子看看,小白太多了,他们就需要这样的书。再就是jfinal圈子连一本全面的基础书都没人写,更别谈源码剖析类型的了。
任任任老师
任任任老师
但看目录,这书太简单了吧。能不能更多的深入到源代码级别来剖析
littleant
littleant 博主

引用来自“篷篙人”的评论

引用来自“littleant”的评论

引用来自“Smile月光”的评论

有点贵
恩,有点,不过就算我降10元,还是有人觉得贵,想买的人不会在意这10来块钱,但是书价不可能定到40以内

同感就内容看不值这个标价0
前五章免费章节你看过没?
篷篙人
篷篙人

引用来自“littleant”的评论

引用来自“Smile月光”的评论

有点贵
恩,有点,不过就算我降10元,还是有人觉得贵,想买的人不会在意这10来块钱,但是书价不可能定到40以内

同感就内容看不值这个标价0
学JFinal不迷路,JFinal优质资源列表(欢迎反馈更新)

学JFinal不迷路,记录一下JFinal相关的资源、产品、讲师等信息(所有信息排名不分先后)。 一、相关站点: 1、JFinal官网-问答、分享、文档、交流、俱乐部 http://www.jfinal.com 2 、JFina...

山东-小木
2019/05/25
673
0
JFinal 3.4 发布,将极速贯彻到 UI 层

jfinal 的终极目标是全面实现软件开发整个过程的极速开发,极大提升开发效率,极大降低学习成本,极大提升开发体验 jfinal 诞生头五年,已实现 WEB + ORM + AOP 层面的极速开发,赢得了大量开...

JFinal
2018/04/28
17.9K
136
JFinal 4.8 发布,迭代 9 年依然极简、极速

从 2010 年 12 月 18 日第一个初始版本,到 2012 年 3 月 18 日在 oschina 开源,到今天 2019 年 12 月 18 日,JFinal 已迭代 9 年。 任何系统都有向复杂、混乱方向演化的倾向,本质是由于简...

JFinal
2019/12/18
19.9K
199
SoJpt Boot 2.0-3.8 发布,Spring Boot 使用 Jfinal 特性极速开发

SoJpt Boot,在Spring Boot框架下使用Jfinal特性极速开发。 可以在Spring Boot中向使用Jfinal一样使用Enjoy, Aop, controller的一系列方法(如: getFile(), renderFile....),以及ActiveRecor...

Sohnny
2019/04/09
658
0
JFinal 3.2 发布,星星之火已成燎原之势

JFinal第一版于2011年3月诞生于公司内部,应用于公司项目后大受欢迎,一年后于2012年3月18日选择在OSChina社区开源。 历经6年工匠精神的打磨,现已进化成生机勃勃的生态系统,星星之火已成燎...

JFinal
2017/08/08
13.5K
161

没有更多内容

加载失败,请刷新页面

加载更多

在JavaScript中将数字转换为字符串的最佳方法是什么?

将数字转换为字符串的“最佳”方法是什么(就速度优势,清晰度优势,内存优势等而言)? 一些例子: String(n) n.toString() ""+n n+"" #1楼 如果需要将结果格式设置为特定的小数位数 (例如...

javail
27分钟前
111
0
51单片机中断学习

一、中断的概念 CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生); CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务); 待CPU将事件B处理完毕后,再回到原...

demyar
28分钟前
97
0
创龙TI KeyStone C66x多核定点/浮点DSP TMS320C665x 的拓展IO信号、FMC接口

广州创龙结合TI KeyStone系列多核架构TMS320C665x及Xilinx Artix-7系列FPGA设计的TL665xF-EasyEVM开发板是一款DSP+FPGA高速大数据采集处理平台,其底板采用沉金无铅工艺的6层板设计,适用于高...

Tronlong创龙
29分钟前
90
0
理解虚拟网络

概念 TUN/TAP,veth

认真即可
35分钟前
162
0
聊聊artemis的ServerConnectionLifeCycleListener

序 本文主要研究一下artemis的ServerConnectionLifeCycleListener BaseConnectionLifeCycleListener activemq-artemis-2.11.0/artemis-core-client/src/main/java/org/apache/activemq/artem......

go4it
36分钟前
111
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部