词条 | 深入解析SpringMVC与WebFlow |
释义 | 本书是Spring MVC 和Web Flow 两个框架的权威指南,书中包括的技巧和提示可以让你从这个灵活的框架中汲取尽可能多的信息。书中包含了一些开发良好设计和解耦的Web 应用程序的最佳实践,介绍了Spring 框架中的Spring MVC 和Spring Web Flow,以及着重介绍利用Spring 框架和Spring MVC 编写Web 应用程序的最佳方法。本书还介绍了Spring 框架的设计模式,以及如何将同样的设计和技术应用到读者自己的代码中。本书适合各层次Spring Web 程序员阅读。 图书信息书名: 深入解析Spring MVC与Web Flow书号: 978-7-115-16973-0/TP 原书名: Expert Spring MVC and Web Flow 原出版社: Apress 丛书名: 图灵程序设计丛书 分类: 计算机 >> Web编程与设计 >> Web服务 作者: Darren Davison, Steven Devijver, Seth Ladd 译者: 徐哲 沈艳 出版日期: 2008-09-27 语种: 简体中文 开本: 16开 页数: 344 目录第1章 概述 1 1.1 阅读顺序 2 1.2 本书纵览 2 1.3 导引 2 1.4 读者对象 3 1.5 进一步的资源 4 1.6 升级到Spring的新版本 5 1.7 本章小结 6 第2章 Spring框架 7 2.1 控制反转 7 2.1.1 控制反转实例 7 2.1.2 小结 10 2.2 依赖注入 10 2.2.1 Service Locator模式 12 2.2.2 依赖注入 13 2.3 Spring的ApplicationContext 15 2.4 POJO归来 16 2.5 对Web应用程序的影响 17 2.6 本章小结 17 第3章 Spring MVC应用程序架构 18 3.1 抽象层 18 3.1.1 层隔离 19 3.1.2 Java接口作为层的约定 20 3.1.3 Spring MVC应用程序中的层 21 3.2 选择:条条大路通罗马 32 3.3 本章小结 33 第4章 Spring MVC初体验 34 4.1 用例 34 4.1.1 服务接口 34 4.1.2 用例1 35 4.1.3 用例2 37 4.1.4 小结 42 4.2 Web组件 42 4.2.1 JAR依赖 42 4.2.2 Controller类 43 4.2.3 View类 44 4.2.4 ModelAndView类 44 4.3 构建主页用例 44 4.3.1 Spring MVC 组件 44 4.3.2 Web应用程序配置 49 4.3.3 启动应用程序 52 4.3.4 请求处理顺序 53 4.3.5 小结 54 4.4 构建航班搜索用例 55 4.4.1 SimpleFormController 55 4.4.2 SearchFlightsController 56 4.4.3 表单视图 59 4.4.4 Spring JSP标签 61 4.4.5 成功视图 62 4.4.6 小结 63 4.5 整装待发 64 第5章 处理管道 65 5.1 处理请求 65 5.1.1 请求工作流 65 5.1.2 功能概览 65 5.1.3 处理请求的各组件 67 5.2 本章小结 97 第6章 深入解析Controller 98 6.1 概述 98 6.2 Controller接口和实现 99 6.2.1 设计初探 99 6.2.2 AbstractController 100 6.2.3 BaseCommandController 104 6.2.4 绑定表单到bean 105 6.2.5 SimpleFormController和处理表单 128 6.2.6 Redirect After Submit模式 142 6.2.7 MultiActionController 145 6.2.8 AbstractWizardFormController 153 6.2.9 ThrowawayController 168 6.2.10 ValidatableThrowaway-Controller 170 6.3 HandlerInterceptor 171 6.3.1 HandlerInterceptor示例 172 6.3.2 小结 173 6.4 本章小结 173 第7章 视图层 175 7.1 视图中包含什么 175 7.2 Spring的视图接口 176 7.2.1 实现视图 177 7.2.2 View和Controller:愉快的分离 180 7.3 ViewResolver 181 7.3.1 在上下文中解析视图 182 7.3.2 ViewResolver的类型 183 7.3.3 使Dispatcher知道ViewResolver 186 7.4 重定向简述 187 7.5 主题 188 7.5.1 ThemeSource 189 7.5.2 ThemeResolver 190 7.6 视图层的国际化 190 7.6.1 区域解析 191 7.6.2 MessageSource Bean 191 7.6.3 视图解析 192 7.6.4 主题解析 192 7.7 绑定支持 193 7.7.1 绑定和验证顺序的概述 193 7.7.2 视图模板的绑定支持 193 7.8 本章小结 193 第8章 受支持的视图类型 194 8.1 JSP和JSTL 194 8.1.1 模型暴露为请求属性 195 8.1.2 展示模型 196 8.1.3 JSP标签库 197 8.1.4 表单 198 8.2 Tiles 202 8.3 Velocity和FreeMarker 204 8.3.1 模板的优点和缺点 205 8.3.2 模板引擎的基本配置 205 8.3.3 暴露模型 206 8.3.4 模板语言 207 8.3.5 高级配置选项 208 8.3.6 表单和SpringBind宏 209 8.3.7 数字和日期工具 215 8.3.8 附加的Velocity视图 216 8.3.9 小结 216 8.4 XML和XSLT 217 8.4.1 定义XSLT视图 217 8.4.2 转化XML源代码 219 8.4.3 返回原始状态的XML 220 8.4.4 XSLT的其他显著功能 221 8.4.5 小结 222 8.5 PDF 222 8.5.1 配置应用程序以使用PDF视图 223 8.5.2 用FOP创建模板PDF 224 8.6 Excel 224 8.6.1 创建模板 224 8.6.2 编程 225 8.6.3 配置应用程序 225 8.7 JasperReports 226 8.7.1 多种形式的视图 227 8.7.2 填充报表 228 8.7.3 小结 229 8.8 创建新视图 229 8.9 本章小结 229 第9章 验证 230 9.1 编程式Validator 230 9.2 声明式Validator 231 9.3 消息源 241 9.4 Validator和业务逻辑 242 9.5 Errors接口 243 9.6 测试验证器 244 9.7 本章小结 245 第10章 测试Spring MVC应用程序 246 10.1 概览 246 10.1.1 单元测试 246 10.1.2 单元测试小结 262 10.1.3 集成测试 263 10.2 测试小结 267 第11章 Spring Web Flow入门 268 11.1 Spring Web Flow的动机 268 11.1.1 servlet规范的问题 268 11.1.2 解决方案 270 11.2 不是万能钥匙 272 11.3 总览 272 11.3.1 架构概览 272 11.3.2 Spring Web Flow系统内部 273 11.3.3 不同的作用域 273 11.3.4 组成 274 11.4 第一个流 276 11.4.1 安装Spring Web Flow 276 11.4.2 提出流目录结构 276 11.4.3 Purchase Product流定义 277 11.4.4 实现第一步:视图状态 277 11.4.5 过渡 277 11.4.6 动作 278 11.4.7 Action bean定义 279 11.4.8 测试流执行 280 11.4.9 扩展AbstractFlowExecution-Tests 281 11.4.10 决定状态 282 11.4.11 动作状态 283 11.4.12 结束状态 284 11.4.13 Purchase Product流:接下来做什么 285 11.4.14 Spring MVC部署 285 11.4.15 FlowController 286 11.4.16 FlowRegistry 286 11.4.17 附加配置 286 11.4.18 视图模板解析 287 11.4.19 视图模板要求 287 11.4.20 从浏览器中启动流 288 11.5 本章小结 288 11.5.1 模型对话 289 11.5.2 允许扩展 289 11.5.3 可测试 289 11.5.4 鉴别流(简单而自然的语言) 289 第12章 高级Spring Web Flow 290 12.1 业务逻辑和流 290 12.2 流粒度 291 12.2.1 子流 291 12.2.2 内嵌流 297 12.2.3 小结 299 12.3 管理FlowExecutions 299 12.3.1 与Web框架集成 299 12.3.2 FlowExecutionManager 301 12.3.3 FlowExecution 301 12.3.4 FlowExecutionListener 304 12.4 FlowExecution仓库 306 12.4.1 延续键 306 12.4.2 FlowExecutionRepository实现 308 12.4.3 有状态FlowExecution仓库 309 12.4.4 无状态FlowExecution仓库 309 12.4.5 完成后对话失效 310 12.5 再次访问的状态和过渡 310 12.5.1 动作状态 311 12.5.2 POJO动作 313 12.5.3 暴露POJO方法返回值 314 12.5.4 使用视图状态和结束状态定制视图选择 314 12.5.5 决定状态 316 12.6 异常处理 317 12.7 异常处理小结 319 12.8 本章小结 320 附录A MVC应用程序的文档 321 A.1 BeanDoc 321 A.1.1 安装和构建BeanDoc 321 A.1.2 在配置文件上运行BeanDoc 322 A.1.3 其他选项 323 A.1.4 控制输出 324 A.2 小结 324 附录B Ajax和DWR 325 B.1 Spring和DWR 325 B.2 应用的示例 326 B.2.1 配置和代码改变 326 B.2.2 介绍文件改变 328 B.3 无障碍 333 前言Spring MVC和Spring Web Flow是Spring的开发人员和社区为我们带来的两个非常灵活和强大的两个Web框架。Spring MVC是一个构建于Spring Framework之上的现代Web应用程序框架;而Spring Web Flow则是一个现在已经独立于Spring Framework之外、用于配合Spring MVC的新项目,主要用于构建可重用的封装了丰富的页面导航规则的Web控制器模块。本书深入探讨了这两个框架。除了详细分析代码及其功能之外,我们还穿插了与这两个框架以及一般意义上的Web开发相关的大量技巧。 我们写作本书的目的是告诉读者如何最大程度地发挥出这两个框架的潜力。在本书的帮助下,你可以更清楚地研究源代码,加深对框架的理解,开发出高质量的应用程序。 我们在开发Spring MVC和Spring Web Flow时充分运用了设计模式和许多面向对象的专家技术。本书不仅将解释我们设计这两个框架时的许多设计决策是如何做出的,而且还会告诉读者如何在自己的项目中应用类似的设计思路和技巧。 我们花费了不少心血,力图讲清楚Spring MVC和Spring Web Flow两个框架的每个细节,给读者建立大局观。除了它们最著名的特性之外,我们还讲述了许多不为人知的技术亮点。但是我们深知,框架不可能解决所有问题,所以还详细探讨了如何正确和安全地扩展框架,得到灵活、更符合客户需求的解决方案。 无论你是初学者,还是专家,通过本书,你可以更加自信地投入到Spring Web应用的开发中去。 致谢 一本书仅靠作者是不可能完成的,它是很多人的专业知识、辛勤劳动、宝贵时间和超常努力的成果。本书应归功于参与其事的每个人。 首先我要感谢我的妻子,一个拥有天使般耐心的人。她的爱和支持陪伴我写作的始终。 我也要感谢我的合著者,因为他们贡献了独特而无价的知识和洞察力,从而产生了比我单独创作更出色的著作。感谢Darren、Steven、Keith和Colin! 如果没有Apress出版社编辑们的才干和专业知识,这本书不可能面世。具体地说,我衷心感谢Sofia Marchant和Beckie Brand协调各部门,并尽最大努力确保本书做到最好。我要特别感谢Stephanie Provines,没有她的帮助,我们将很难完成Spring MVC的相关内容。她对细节的关注令人印象深刻,而且极具价值。我也要特别感谢Steve Anglin给了我这个机会。对于未提及的其他所有人,我永远感谢你们。 我很高兴由Rob Harrop 来做本书的技术审稿人。他的建议总是准确有用而且专业。谢谢你,Rob,我很荣幸有你作为这个团队的一份子。 谢谢Erwin Vervaet、Dan Leuck和Colin Sampaleanu在审阅本书时提出的专业建议。谢谢Kathleen Fitzgerald的拍摄。最后,谢谢Spring框架的开发者和社区,从他们那里我学到了极其多的关于软件开发的知识。 |
随便看 |
|
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。