年份:2018年作者:马克出版社:机械工业出版社

语言:chinese

类型:PDF

大小:112.28 MB

页数:234

ISBN NO:7111601297

目录
前言 1
第一部分 Java模块系统介绍
第1章 模块化概述 8
1.1 什么是模块化 9
1.2 在Java 9之前 10
1.2.1 将JAR作为模块? 11
1.2.2 类路径地狱 13
1.3 Java 9模块 14
第2章 模块和模块化JDK 18
2.1 模块化JDK 19
2.2 模块描述符 22
2.3 可读性 23
2.4 可访问性 24
2.5 隐式可读性 25
2.6 限制导出 29
2.7 模块解析和模块路径 29
2.8 在不使用模块的情况下使用模块化JDK 31
第3章 使用模块 33
3.1 第一个模块 33
3.1.1 剖析模块 33
3.1.2 命名模块 35
3.1.3 编译 36
3.1.4 打包 37
3.1.5 运行模块 37
3.1.6 模块路径 39
3.1.7 链接模块 40
3.2 任何模块都不是一座孤岛 41
3.2.1 EasyText示例介绍 41
3.2.2 两个模块 43
3.3 使用平台模块 46
3.3.1 找到正确的平台模块 46
3.3.2 创建GUI模块 47
3.4 封装的限制 51
第4章 服务 54
4.1 工厂模式 54
4.2 用于实现隐藏的服务 57
4.2.1 提供服务 57
4.2.2 消费服务 59
4.2.3 服务生命周期 61
4.2.4 服务提供者方法 62
4.3 工厂模式回顾 64
4.4 默认服务实现 65
4.5 服务实现的选择 66
4.6 具有服务绑定的模块解析 68
4.7 服务和链接 70
第5章 模块化模式 73
5.1 确定模块边界 74
5.2 精益化模块 76
5.3 API模块 76
5.3.1 API模块中应该包含什么 77
5.3.2 隐式可读性 78
5.3.3 带有默认实现的API模块 81
5.4 聚合器模块 82
5.4.1 在模块上构建一个外观 83
5.4.2 安全拆分模块 84
5.5 避免循环依赖 86
5.5.1 拆分包 86
5.5.2 打破循环 87
5.6 可选的依赖关系 90
5.6.1 编译时依赖关系 91
5.6.2 使用服务实现可选依赖关系 95
5.7 版本化模块 96
5.8 资源封装 99
5.8.1 从模块加载资源 100
5.8.2 跨模块加载资源 101
5.8.3 使用ResourceBundle类 102
第6章 高级模块化模式 104
6.1 重温强封装性 104
6.1.1 深度反射 105
6.1.2 开放式模块和包 106
6.1.3 依赖注入 109
6.2 对模块的反射 111
6.2.1 内省 112
6.2.2 修改模块 113
6.2.3 注释 114
6.3 容器应用程序模式 115
6.3.1 层和配置 116
6.3.2 层中的类加载 119
6.3.3 插件体系结构 122
6.3.4 容器体系结构 127
6.3.5 解析容器中的平台模块 132
第二部分 迁移
第7章 没有模块的迁移 134
7.1 类路径已经“死”了? 135
7.2 库、强封装和JDK 9类路径 135
7.3 编译和封装的API 138
7.4 删除的类型 141
7.5 使用JAXB和其他Java EE API 142
7.6 jdk.unsupported模块 145
7.7 其他更改 146
第8章 迁移到模块 148
8.1 迁移策略 148
8.2 一个简单示例 149
8.3 混合类路径和模块路径 150
8.4 自动模块 152
8.5 开放式包 155
8.6 开放式模块 157
8.7 破坏封装的VM参数 158
8.8 自动模块和类路径 158
8.9 使用jdeps 161
8.10 动态加载代码 164
8.11 拆分包 166
第9章 迁移案例研究:Spring和Hibernate 167
9.1 熟悉应用程序 167
9.2 使用Java 9在类路径上运行 172
9.3 设置模块 173
9.4 使用自动模块 174
9.5 Java平台依赖项和自动模块 176
9.6 开放用于反射的包 176
9.7 解决非法访问问题 177
9.8 重构到多个模块 178
第10章 库迁移 180
10.1 模块化之前 181
10.2 选择库模块名称 181
10.3 创建模块描述符 184
10.4 使用模块描述符更新库 186
10.5 针对较旧的Java版本 187
10.6 库模块依赖关系 188
10.6.1 内部依赖关系 188
10.6.2 外部依赖关系 191
10.7 针对多个Java版本 192
10.7.1 多版本JAR 192
10.7.2 模块化多版本JAR 195
第三部分 模块化开发工具
第11章 构建工具和IDE 198
11.1 Apache Maven 198
11.1.1 多模块项目 200
11.1.2 使用Apache Maven创建EasyText示例 200
11.1.3 使用Apache Maven运行模块化的应用程序 204
11.2 Gradle 205
11.3 IDE 205
第12章 测试模块 207
12.1 黑盒测试 208
12.2 使用JUnit进行黑盒测试 210
12.3 白盒测试 212
12.4 测试工具 216
第13章 使用自定义运行时映像进行缩减 217
13.1 静态链接和动态链接 218
13.2 使用jlink 219
13.3 查找正确的服务提供者模块 223
13.4 链接期间的模块解析 223
13.5 基于类路径应用程序的jlink 224
13.6 压缩大小 225
13.7 提升性能 227
13.8 跨目标运行时映像 228
第14章 模块化的未来 229
14.1 OSGi 230
14.2 Java EE 232
14.3 微服务 232
14.4 下一步 233

温馨提示:如果下载链接失效,请直接在上方的“评论建议”里留言,我们会第一时间进行修补!也可以添加客服微信:TM8521595 进行反馈,或者发送问题至邮箱(ebookmany@163.com),我们在收到反馈后,会第一时间进行处理(一般不会超过2小时),谢谢大家理解!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

本站所有电子书都是采用常规格式的,一般包括PDF、mobi、epub等格式,大家可以下载一个“稻壳阅读器”进行阅读,下载链接可通过稻壳官网进行下载,官网链接:http://www.daokeyuedu.com/

如果您已经成功付款但是网站没有弹出成功提示或下载链接失效,请联系站长,提供付款信息为您处理

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

本站所有商品均属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源