本人用(金山快译个人版1.0)翻译, 在此感谢金山软件公司免费提供翻译软件。
机器翻译, 人工修正,不通之处请指正。
内容 序 xix 序文 xxiii 第一版 xxv 的序文 承认 xxvii 关于这本书 xxix 关于名称 xxxiv 关于封面插图 xxxv AOP xxxvii 的真实远景 部份 1 理解 AOP AND ASPECTJ...1 1 发现 AOP 3 1.1 没有 AOP 的生活 4 代码使缠结 5 代码散射 7 1.2 模块化用 AOP 7 1.3 一个 AOP 语言 的剖析 9 AOP 语言规格 9 AOP 语言实施 10 1.4 在 AOP 的基本观念 11 内容 ix 内容 x 1.5 相似 的 AOP 13 Cascading Style Sheets (CSS) 13 数据库系统 14 事件导向的程序规划 15 1.6 AOP 的实施 15 AspectJ 15 Spring AOP 16 AOP 的其他实施 17 1.7 AOP 的替代品 17 结构 17 代码第 代 18 设计模式 19 动态的语言 22 1.8 AOP 的费用和利益 23 AOP 的费用 23 AOP 的利益 24 1.9 摘要 25 2 介绍 AspectJ 27 2.1 写你的第一个 AspectJ 程序 28 安装例子 28 增加一个方面 29 2.2 AspectJ 横切构造 31 共同的横切概念 31 动态的横切 概念:通知 32 静态的横切概念 34 2.3 AspectJ 替代选择语法 37 2.4 编织机制 39 源码编织 39 二进制码编织 39 负荷-时间 编织 41 2.5 AspectJ 编织:在活线绝缘套 之下 42 被编译的方面 43 被针织的类别 43 2.6 Spring AspectJ 整合 44 2.7 AspectJ 物流管理概观 46 IDE 整合 46 AspectJ 文件编写用工具工作 48 2.8 摘要 49 3 理解连接点模型 51 3.1 理解连接点模型 52 接合点 53 切入点 54 3.2 分类暴露的连接点 55 方法接合点 56 建设者接合点 57 栏位存取接合点 58 例外-处理程式接合点 59 类别-设定初值接合点 59 物件设定初值接合点 60 反对前设定初值接合点 60 通知运行接合点 61 内容 xi 3.3 连接点示范例子 61 方面 61 结果 62 3.4 理解切入点基本 64 命名和作者不详的切入点 64 切入点值机员 65 3.5 讯号调语法 65 型态讯号调模式 66 方法和建设者讯号调模式 69 栏位讯号调模式 73 3.6 实现切入点 75 被类型的切入点 75 非类型切入点 77 3.7 摘要 85 4 修改行为用动态的横切 87 4.1 通知概观 88 通知分类 88 通知语法 88 4.2 比较通知和方法 90 通知之间的类似和方法 90 不同在 通知和方法 91 4.3 深度 的通知 92 在通知 之前 92 在通知 之后 92 在通知 的周围 94 4.4 收集连接点背景 99 在接合处的收集物件点 99 实现简单的 快取技术 102 4.5 存取连接点背景经由反射 105 反射 API 106 改良快取技术使用反射 API 109 比较反射 API 和切入点 113 4.6 摘要 115 5 修改结构用静态的横切 116 5.1 介绍成员 117 散射而且使缠结 117 解开纠结与方面 118 和 mixins 混合在一起 121 成员介绍规定 123 成语:提供一个内定的介面实施 124 5.2 修改型态科学之分类 128 5.3 介绍多类型 给成员认识 129 5.4 供应注解 130 5.5 宣布编法-时间的错误和警告 132 内容 xii 5.6 软化处理检查例外 133 5.7 摘要 134 6 方面:一起放它 136 6.1 工作用方面 137 方面之间的类似和类别 137 不同在 方面和类别 139 6.2 方面关联 140 内定的一个关联 141 每一-物件关联 143 每一-控制-流量的关联 145 每一-型态关联 148 接合处的隐含的极限以方面关联 点 150 存取方面引以为例 151 比较每一-物件 关联和成员介绍 152 改良快取技术方面 153 6.3 方面优先 159 通知 的排序 161 明白的方面优先 162 一个方面 的排序通知 164 6.4 有特权的方面 166 6.5 摘要 167 7 深入 the @AspectJ 语法 168 7.1 语法概观 169 天然的映射 170 Java 语言相容性 171 早错误检波 171 7.2 映射方面 172 叙述方面关联 173 存取方面 例证 173 宣布方面优先 173 7.3 映射切入点 174 映射摘要切入点 174 映射具体的切入点 175 7.4 映射动态的横切概念 179 这在通知之前 180 这在通知之后 184 这在通知 的周围 187 7.5 映射静态的横切 189 映射编法-时间的公告 189 映射宣布父母 190 7.6 扮演重要角色不实现在@AspectJ 194 联合注解 194 介绍数据和方法 194 软化处理例外 195 有特权的方面 196 内容 xiii 7.7 比较语法设计 196 7.8 摘要 197 8 AspectJ 编织模型 199 8.1 分类编织模型 200 8.2 建造-时间编织 201 建造-时间的根源程序码编织 201 建造-时间的二进制码编织 202 8.3 负荷-时间编织 206 负荷-时间编织概观 206 配置负荷-时间的织布者 208 8.4 行动 的负荷-时间的织布者 213 8.5 选择语法而且编织 215 8.6 摘要 216 9 和第 Spring 整合 217 9.1 Spring AOP 原则 218 安装应用程序 219 利用这@AspectJ 语法 221 Spring IDE 222 9.2 在活线绝缘套 下面的 Spring AOP 222 对动态的代理 的快介绍 223 以代理为基础的 AOP 用第 Spring 224 Spring AOP 内在的 225 在 DI 结构 的以代理为基础的 AOP 226 Spring AOP 的限制 227 9.3 @AspectJ 深度 的支援 229 动态的横切 230 静态的横切 235 9.4 纲目-风格的 AOP 支援 236 映射方面 236 映射切入点 237 映射通知 238 映射静态的横切 239 9.5 进入 AspectJ 的完全能力之内轻打 240 配置方面使用 Spring DI 240 Spring 驱使的 LTW 241 9.6 选择一个适当 AOP 系统 245 比较 AspectJ 跳 AOP 245 比较 Spring AOP 语法 246 它鈥檚决断计时 246 9.7 摘要 247 内容 xiv 用 Spring 分开 ASPECTJ 的 2个应用程序...249 10 监听技术 251 10.1 行动 的追踪 252 追踪方面导向的方法 253 追踪传统的方法 255 10.2 传统的对 AOP 追踪 257 10.3 选择兴趣 的连接点 258 基于静态的结构 的选择 259 基于动态的背景 的选择 263 10.4 追踪 264 压痕扫掠线拨打 264 共享追踪方面功能性 266 追踪方法内使用率 267 登录方法叁数 268 选择一个型态-特定的拖拉器 270 10.5 一个绕路:配置选择项为监听方面 271 利用负荷-时间编织 271 为追踪利用 Spring AOP 273 10.6 例外监听 275 10.7 改良传统的日志 277 模块化 NDC 用传统的日志 277 模块化 MDC 用传统的日志 279 10.8 绩效监听 281 10.9 运行时间监听方面 的控制 284 10.10 摘要 286 11 策略厉行:保存你的设计尚未被人碰过的 288 11.1 以 AOP 为基础的策略厉行概观 289 11.2 策略起始和目的地 294 11.3 加强使用 AOP 294 编译-时间厉行 295 运行时间厉行 296 11.4 比较用代码-分析用工具工作 297 11.5 实现有柔性的使用控制 298 限制露光表 298 极限合作 299 运行工厂模式 301 11.6 加强成语:返回-数值的限制 303 11.7 运行 JPA-JDBC 的整合策略 304 内容 xv 11.8 实现 EJB 策略 308 发展核心 EJB 厉行方面 309 定义 EJB 切入点 310 行为用以可扩展标示语言为基础的 EJBs 312 实现鈥渘 o EJBs 鈥?策略 312 11.9 发现 Swing 并发控制策略违反 313 理解问题 314 发现违反 315 11.10 摘要 318 12 学习设计模式 319 12.1 工人物件模式 320 目前的解决 320 概观工人,物件模式 321 工人反对模式型板 321 得到返回数值 324 摘要工人,物件模式 326 12.2 虫孔模式 327 目前的解决 327 虫孔的概观模式 327 虫孔模式型板 328 虫孔的一个摘要模式 330 12.3 叁加者模式 330 目前的解决 331 叁加者的概观模式 333 叁加者模式型板 333 叁加者的结果模式 336 叁加者的一个摘要模式 336 12.4 注解载的叁加者模式 336 目前的解决 337 载注解叁加者模式型板 337 注解型态抽象化 338 变化:被以桥连接的分享模式 341 ADPP 在程序馆方面 的角色 342 12.5 摘要 343 13 实现并发控制 344 13.1 模块化 Swing 单一线程的规定 345 一个测试问题 346 解决:传统的方法 348 解决:AspectJ 方法 351 改良解决 361 13.2 改良 UI 应用程序 的回答 362 13.3 模块化阅读-书写闭锁模式 365 实施:传统的方法 365 实施:AspectJ 方法 367 13.4 摘要 371 内容 xvi 14 管理处理 373 14.1 处理管理实施 374 传统的实施 374 AOP 实施 375 14.2 处理-管理的播放器 376 结构 的处理管理 376 处理管理:一项观念,太多实施 377 处理-管理的抽象化 377 14.3 方面实施选择 378 以代理为基础的 AOP 378 字节码编织 379 14.4 擦伤 的处理-管理的方面 (几乎) 379 实现方面 380 尝试方面 382 道路测试为方面 384 14.5 Spring 鈥檚处理管理 390 可扩展标示语言载的处理管理 391 注解载的处理管理 393 AspectJ 以织布者為主的处理管理 394 14.6 为交易的运算 实现故障容许度 395 基本的方面 395 使用载注解的叁加者模式 397 配置方面 398 尝试故障-容许度的方面 399 改良解决 401 14.7 摘要 402 15 固定应用程序 404 15.1 固定应用程序用传统的技术 405 自己做方式的方法 405 以结构为基础的方法 406 15.2 模块化安全使用 AOP 406 15.3 Spring 安全 的快概观 407 监定 407 授权 408 15.4 实现擦伤 的安全解决 409 实现监定方面 410 实现授权方面 413 15.5 实现栏位级的授权 421 15.6 Spring 安全建造解决 425 Web 安全 425 维修同高的安全 425 领域-物件的安全 428 内容 xvii 15.7 实现安全 的另外主意 428 收支检查存取 429 过滤栏位使 满足 429 15.8 摘要 429 16 改良领域逻辑 431 16.1 授与权力物件 432 促成富有的行为 433 注射属国用 Spring 和 AspectJ 434 被领域-物件的 DI 能够的可能性 442 16.2 实现商务逻辑 447 改良详细目录管理 447 为命令级者检查拘束 449 使用方面 再因素 450 16.3 管理对物件 的存取 452 应用特定的策略 452 应用一般的策略 453 16.4 摘要 458 17 采取下一个第 步骤 459 17.1 采用路径:技术 459 Spring AOP 460 AspectJ 460 17.2 采用路径:应用程序 460 发展方面 460 生产方面 462 17.3 应用 AOP 到新问题 462 讲话谈话 462 步行散步 463 17.4 使用发展的 AOP 逐步实行 464 设计的 AOP 逐步运行 464 实施的 AOP 阶段 464 在维护的 AOP 逐步运行 466 在遗赠物的 AOP 计画 467 17.5 离别的想法 468 附录 A 安装例子 469 附录 B 和 AspectJ 一起使用 Ant 486 附录 C 和 AspectJ 一起使用 Maven 491 索引 497