企业级JavaEE架构设计精深实践PDF电子书下载
- 电子书积分:15 积分如何计算积分?
- 作 者:罗果著
- 出 版 社:北京:清华大学出版社
- 出版年份:2016
- ISBN:9787302434702
- 页数:500 页
第1章 虚拟文件系统实践 1
1.1 背景介绍 1
1.2 什么是VFS 1
1.3 VFS对比 2
1.3.1 Apache VFS 2
1.3.2 Tiny VFS 2
1.4 VFS框架设计思想 3
1.5 VFS实现讲解 5
1.5.1 VFS管理器 5
1.5.2 SchemaProvider模式提供者 7
1.5.3 FileObject虚拟文件 7
1.5.4 FileObjectFilter过滤接口 10
1.6 VFS应用示例 12
1.6.1 本地文件 13
1.6.2 Jar文件 13
1.6.3 FTP文件 14
1.6.4 ZIP文件 14
1.7 本章总结 15
第2章 缓存实践 16
2.1 缓存简介 16
2.1.1 问题的提出及其解决方案分析 16
2.1.2 用户需求 19
2.1.3 Tiny缓存解决思路 19
2.2 字节码缓存设计 23
2.2.1 字节码操作工程 23
2.2.2 预编译工程 27
2.2.3 缓存实现工程 28
2.2.4 技术特点 31
2.3 动态代理缓存设计 31
2.3.1 缓存接口定义 32
2.3.2 切面缓存工程 33
2.3.3 技术特点 43
2.4 缓存方案实践 43
2.4.1 字节码方案配置 43
2.4.2 字节码方案示例 44
2.4.3 动态代理方案配置 46
2.4.4 动态代理方案示例 48
2.5 本章总结 54
2.5.1 关键点:缓存实现方案的可替换性 54
2.5.2 关键点:缓存代码与业务代码的解耦 54
2.5.3 关键点:模板语言的应用 55
第3章 文件处理框架实践 56
3.1 概述 56
3.1.1 FileProcessor接口 56
3.1.2 FileResolver接口 58
3.1.3 FileMonitorProcessor类 60
3.2 基础文件扫描器 60
3.2.1 XStreamFileProcessor类 61
3.2.2 I18nFileProcessor类 63
3.2.3 Annotation扫描器 63
3.2.4 SpringBeansFileProcessor类 65
3.3 完整示例 66
3.3.1 单独使用 66
3.3.2 通过配置文件配置 66
3.4 本章总结 67
第4章 模板语言实践 69
4.1 模板语言简介 69
4.1.1 模板语言构成 69
4.1.2 模板语言应用场景 70
4.2 常见的模板语言 71
4.2.1 Velocity模板语言 71
4.2.2 FreeMarker模板语言 71
4.2.3 Tiny模板语言 72
4.3 Tiny模板语言设计 73
4.3.1 Tiny模板语言的构建原因 73
4.3.2 模板语言执行方式 73
4.3.3 模板语言架构 73
4.3.4 Tiny模板语言实现与扩展 74
4.3.5 模板语言语法解析 88
4.3.6 模板语言渲染机制 94
4.4 模板语言的使用 99
4.4.1 依赖配置 99
4.4.2 模板语言的配置 99
4.4.3 模板语言的Eclipse插件 101
4.4.4 Hello,TinyTemplate 104
4.5 模板语言语法介绍 105
4.5.1 变量 106
4.5.2 取值表达式 107
4.5.3 Map常量 107
4.5.4 数组常量 108
4.5.5 其他表达式 109
4.5.6 索引表达式 111
4.5.7 #set指令 111
4.5.8 条件判断 112
4.5.9 ==相等运算 113
4.5.10 AND运算 114
4.5.11 OR运算 114
4.5.12 NOT运算 114
4.5.13 循环语句 114
4.5.14 循环状态变量 116
4.5.15 循环中断:#break 116
4.5.16 循环继续:#continue 117
4.5.17 while循环 117
4.5.18 模板嵌套语句#include 117
4.5.19 宏定义语句#macro 118
4.5.20 宏引入语句#import 120
4.5.21 布局重写语句#layout#@layout 120
4.5.22 停止执行#stop 122
4.5.23 返回指令#return 122
4.5.24 行结束指令 123
4.5.25 读取文本资源函数read和readContent 123
4.5.26 解析模板parser 123
4.5.27 格式化函数fmt、format和formatter 123
4.5.28 宏调用方法call和callMacro 124
4.5.29 实例判断函数is、instanceOf和instance 124
4.5.30 求值函数eval和evaluate 124
4.5.31 随机数函数rand和random 125
4.5.32 类型转换函数 125
4.5.33 日期格式转换formatDate 126
4.6 模板语言扩展 126
4.6.1 资源加载器的使用 126
4.6.2 宏的使用 127
4.6.3 函数的使用 128
4.6.4 国际化的使用 129
4.6.5 静态类和静态方法的使用 130
4.6.6 Servlet集成 130
4.6.7 SpringMVC集成 132
4.7 本章总结 133
第5章 数据库访问层实践 135
5.1 数据访问层简介 135
5.2 常见数据库访问层介绍 136
5.2.1 Hibernate简介 136
5.2.2 Ibatis简介 138
5.2.3 JPA简介 140
5.2.4 DSL数据库访问层简介 141
5.3 TinyDsl设计方案 143
5.3.1 SQL抽象化设计 143
5.3.2 DSL风格SQL设计 149
5.3.3 SQL执行接口设计 153
5.3.4 执行接口实现介绍 155
5.4 数据库访问层示例 163
5.4.1 工程创建 163
5.4.2 准备工作 167
5.4.3 Hibernate示例 170
5.4.4 Ibatis示例 173
5.4.5 JPA示例 176
5.4.6 TinyDsl示例 180
5.5 本章总结 182
第6章 数据库扩展实践 184
6.1 数据库扩展简介 184
6.2 常见数据库扩展方案 184
6.2.1 DAO层 185
6.2.2 DataSource层 186
6.2.3 JDBC层 186
6.2.4 Proxy层 188
6.3 读写分离 189
6.3.1 读写分离 189
6.3.2 负载均衡 191
6.3.3 数据同步 192
6.4 分库分表 193
6.4.1 同库分表 193
6.4.2 不同库分表 193
6.5 开源方案介绍 194
6.5.1 TDDL 194
6.5.2 Routing4DB 195
6.5.3 TinyDbRouter 195
6.5.4 开源方案的对比 195
6.6 TinyDbRouter的设计和实现 197
6.6.1 设计目标 197
6.6.2 设计原理之接入层设计 197
6.6.3 设计原理之SQL解析层设计 203
6.6.4 设计原理之路由决策层设计 204
6.6.5 设计原理之执行层设计 208
6.6.6 实现 211
6.7 应用实践 214
6.7.1 读写分离示例 215
6.7.2 分库分表示例 217
6.7.3 集群事务示例 219
6.7.4 元数据示例 222
6.7.5 自定义扩展 223
6.7.6 常见FAQ 224
6.8 本章总结 225
第7章 服务层实践 227
7.1 服务层简介 227
7.1.1 传统服务层 227
7.1.2 Tiny服务层 227
7.2 Tiny服务层介绍 228
7.2.1 服务声明 229
7.2.2 服务注册 230
7.2.3 小结 231
7.3 本地服务层实践 232
7.3.1 服务描述 232
7.3.2 服务定义 235
7.3.3 服务收集与注册 235
7.3.4 服务执行 236
7.3.5 小结 238
7.4 远程服务实践 240
7.4.1 传统的远程服务 240
7.4.2 新的远程服务模式 240
7.4.3 多服务中心支持 242
7.4.4 新的远程服务实现 244
7.4.5 小结 247
7.5 本地服务调用示例 248
7.5.1 非Tiny框架调用示例 248
7.5.2 Tiny框架应用调用 251
7.6 远程服务配置示例 253
7.6.1 非Tiny框架配置示例 253
7.6.2 Tiny框架应用配置 257
7.7 本章总结 260
第8章 流程引擎实践 261
8.1 流程引擎简介 261
8.1.1 流程引擎的来历 261
8.1.2 解决方案 262
8.1.3 特性简介 262
8.2 流程引擎实现 263
8.2.1 流程组件 263
8.2.2 流程组件配置 265
8.2.3 流程组件管理 266
8.2.4 流程配置 266
8.2.5 流程管理 269
8.2.6 流程执行 270
8.3 流程引擎特性 271
8.3.1 流程可继承性 271
8.3.2 灵活的EL表达式 273
8.3.3 流程可重入 275
8.3.4 流程可转出 275
8.3.5 强大异常处理 276
8.4 流程编辑器 278
8.4.1 创建流程 278
8.4.2 界面说明 278
8.4.3 操作说明 279
8.5 本章总结 281
第9章 元数据实践 282
9.1 元数据简介 282
9.1.1 问题背景 283
9.1.2 解决途径 283
9.2 基础元数据设计 284
9.2.1 支持语言类型 284
9.2.2 标准数据类型 286
9.2.3 业务数据类型 287
9.2.4 标准字段 287
9.3 数据库元数据设计 288
9.3.1 表及索引 288
9.3.2 视图 289
9.4 元数据开发指南 289
9.4.1 元数据加载机制 289
9.4.2 元数据处理器 299
9.5 元数据开发实践 311
9.5.1 Eclipse插件 312
9.5.2 应用配置 312
9.5.3 生成方言模板 315
9.5.4 生成标准数据类型 316
9.5.5 生成业务数据类型 319
9.5.6 生成标准字段 323
9.5.7 生成数据库表 326
9.5.8 定义元数据 329
9.5.9 生成Java代码 332
9.5.10 生成SQL 340
9.6 本章总结 342
第10章 展现层开发实践 344
10.1 展示层简介 344
10.1.1 Servlet 344
10.1.2 JSP 345
10.1.3 模板语言 345
10.1.4 展示层常见问题 346
10.2 展示层方案设计 347
10.2.1 UI组件包开发 348
10.2.2 资源合并实践 351
10.2.3 避免重复代码 356
10.2.4 国际化问题 356
10.3 前端访问方案实践 356
10.3.1 组件包封装 357
10.3.2 宏接口定义 359
10.3.3 页面和布局编写 363
10.3.4 前端参数配置 367
10.4 本章总结 369
10.4.1 关键点:DRY原则的实现 369
10.4.2 关键点:JS文件的合并 369
10.4.3 关键点:CSS文件的合并 369
第11章 Web扩展实践 371
11.1 背景简介 371
11.2 监听器设计原理 372
11.2.1 应用配置管理 374
11.2.2 应用处理器(ApplicationProcessor) 375
11.2.3 Web监听器 379
11.2.4 监听器配置管理 383
11.3 过滤器设计原理 385
11.3.1 请求上下文(WebContext) 386
11.3.2 TinyFilter介绍 387
11.4 处理器设计原理 394
11.4.1 过滤器配置(TinyProcessorConfig) 394
11.4.2 过滤器配置管理(TinyProcessorConfigManager) 396
11.4.3 处理器管理接口(TinyProcessorManager) 396
11.5 BasicTinyFilter类 398
11.5.1 拦截器接口 398
11.5.2 默认拦截器 399
11.6 SetLocaleTinyFilter类 399
11.6.1 Locale基础 400
11.6.2 Charset编码基础 400
11.6.3 Locale和charset的关系 401
11.6.4 设置locale和charset 402
11.6.5 使用方法 403
11.7 ParserTinyFilter类 404
11.7.1 基本使用方法 404
11.7.2 上传文件 407
11.7.3 高级选项 409
11.8 BufferedTinyFilter类 412
11.8.1 实现原理 412
11.8.2 使用方法 414
11.8.3 关闭buffer机制 414
11.9 LazyCommitTinyFilter类 414
11.9.1 什么是提交 415
11.9.2 实现原理 415
11.9.3 使用方法 415
11.10 RewriteTinyFilter类 416
11.10.1 概述 416
11.10.2 取得路径 418
11.10.3 匹配rules 418
11.10.4 匹配conditions 418
11.10.5 替换路径 420
11.10.6 替换参数 420
11.10.7 后续操作 421
11.10.8 重定向 422
11.10.9 自定义处理器 423
11.11 SessionTinyFilter类 423
11.11.1 概述 423
11.11.2 Session框架 426
11.11.3 Cookie Store 431
11.11.4 总结 435
11.12 SpringMVCTinyProcessor介绍 435
11.12.1 基于扩展协议的内容协商 436
11.12.2 约定开发 436
11.12.3 扩展协议 438
11.13 TinyWeb实践 439
11.13.1 准备工作 439
11.13.2 使用TinyHttpFilter 440
11.13.3 使用TinyProcessor 441
11.14 本章总结 442
第12章 Tiny统一界面框架实践 444
12.1 UIML简介 444
12.1.1 问题与需求 444
12.1.2 UIML解决方案 445
12.1.3 UIML设计思路 446
12.1.4 UIML优势 447
12.2 UIML开发指南 448
12.2.1 框架管理引擎 448
12.2.2 组件类型 450
12.2.3 组件 451
12.2.4 样式列表 452
12.2.5 样式 452
12.2.6 布局器类型 453
12.2.7 布局器 453
12.2.8 样式类型列表 453
12.2.9 样式类型 453
12.2.10 属性类型 453
12.2.11 属性 454
12.3 UIML使用实践 454
12.3.1 UIML的配置 454
12.3.2 图形编辑器 455
12.3.3 样式简单示例 457
12.3.4 开发流程示例 459
12.4 常见FAQ 460
12.4.1 请问UIML开发必须区别三类角色吗? 460
12.4.2 请问UIML开发需要了解哪些新的概念? 461
12.4.3 请问UIML开发支持Spring等常用框架吗? 461
12.4.4 请问UIML支持哪些平台? 461
12.4.5 请问可以修改引用组件的属性吗? 461
12.4.6 请问设计组件必须指定平台属性吗? 461
12.5 本章总结 461
第13章 RESTful实践 463
13.1 RESTful简介 463
13.2 Spring RESTful实践 464
13.2.1 Spring RESTful简介 464
13.2.2 使用注解配置URL映射 465
13.3 Tiny RESTful风格实践 468
13.3.1 URL映射功能 468
13.3.2 URL映射管理功能 470
13.3.3 URL重写 474
13.4 Tiny RESTful实践 476
13.4.1 环境准备 476
13.4.2 开发用户增删改查应用 476
13.4.3 支持RESTful风格 481
13.5 本章总结 483
附录A 相关资源 484
A.1 复用第三方库列表 484
A.2 借鉴第三方开源框架列表 485
A.3 示例工程简介 486
A.4 支持我们 486
A.5 学习Tiny框架的相关资源 487
附录B 配置运行指南 488
B.1 环境配置 488
B.1.1 配置Java 488
B.1.2 配置Maven 489
B.1.3 配置IDE-Eclipse 490
B.2 mvn编译工程 495
B.3 Eclipse或IDEA运行工程 497
B.3.1 Eclipse 497
B.3.2 IDEA 499
- 《建筑施工企业统计》杨淑芝主编 2008
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《语文教育教学实践探索》陈德收 2018
- 《彼得·布鲁克导演实践研究》邓小玲著 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《反思性实践》胡红梅, 2019
- 《高含硫气藏开发腐蚀控制技术与实践》唐永帆,张强 2018
- 《英语语言学与教学方法研究》冯华,李翠,罗果著 2019
- 《土壤磁化率空间变异性研究》杨萍果著 2012
- 《恶搞 反叛与颠覆》曾一果著 2013
- 《新时期中国共产党的党务公开问题研究》张军果著 2013
- 《极品少女养成系列 兰斯洛特炼金学院》松小果著 2012
- 《西部战略性新兴产业技术路径研究》安果著 2013
- 《你是人间四月天林徽因》也果著 2013
- 《超美味恋爱满屋》松小果著 2012
- 《欲望街右转》米果著 2003
- 《中国佛教经典宝藏精选白话版 来果禅师语录》来果著;星云大师总监修 2012
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019