领先一步
VMware 提供培训和认证,以加速您的进步。
了解更多为了庆祝新的 i21 团队博客的上线,我借此机会介绍一本即将出版的新 Spring 书籍。它的标题是“Spring 入门指南 2:从新手到专业”,由 Apress 出版。我和Mark Fisher (i21)、Bram Smeets (DWR 著名开发者)和 Seth Ladd (“Expert Spring MVC and Web Flow”的作者)共同撰写了这本书。Rob Harrop 担任技术审稿人。
这本书的目标读者——你可能已经猜到了——是 Spring 框架的初学者。Spring 的有趣之处在于,你总是在某些领域是初学者。该框架提供了如此多的功能和集成,你不可能全部掌握(这并不适用于你,Juergen)。
这就是为什么我们没有对“初学者”这个词过于严格。当然,这本书确实为那些在书店拿起这本书并实际上从未听说过 Spring 的人介绍了 Spring 框架。此外,Spring 初学者通常并非 Java 初学者。由于本书还涵盖了许多新的 Spring 2.0 功能,几乎所有 Spring 用户——当然还有 Ben Hale——都会发现至少有一些章节很有趣。
我们采用了问题解决和实用建议的方法。在每一章中,我们都会阐明开发者在该主题领域通常面临的挑战,并通过示例讨论一些常见的陷阱。接下来,我们介绍 Spring 的解决方案以及读者如何在他们的应用程序中从中受益。我们发现,先阐明问题,然后讨论 Spring 的解决方案,这样更容易理解 Spring 的思想并欣赏这些解决方案。
因此,我相信这本书对于那些在项目中使用 Spring 一段时间但从未真正有机会退一步思考解决方案背后问题的人来说会很有趣。
以下是各章节的概要
第 1 章介绍了现代应用程序开发。它概述了配置的挑战以及将架构限制在狭窄编程模型中的危险。它介绍了依赖查找和依赖注入等概念,并将 Spring 置于 JEE 技术的视角中。它介绍了框架的核心价值观:集成、改进、增加一致性、易于使用、文档化和提高标准。
第 2 章介绍了 Spring 容器及其 XML 配置文件。这是相当广泛的介绍,介绍了 Spring 用户可用的灵活性。例如,FactoryBean 和工厂方法的使用被相当详细地介绍,因为它可以为应用程序增加很大的灵活性。bean 生命周期也得到了介绍,因为考虑到 Spring 2.0,理解这个扩展点对于 Spring 用户来说变得越来越重要。
第 3 章介绍了*经典的*Spring AOP 框架。我们发现,如果不向读者温和地介绍核心 AOP 概念,我们就无法介绍新的 Spring 2.0 功能:问题是什么,AOP 是什么以及它如何解决问题?什么是 Advice 以及不同类型是什么?什么是代理对象以及如何配置它们的创建?什么是连接点和切点。最后,本章展示了 Spring 在内部如何使用 AOP 的一些示例?本章基于 Spring 1.2,作为下一章的起点。
第 4 章可能是我——而且我相信也是 Ben——最喜欢的章节,因为它介绍了 Spring AOP 2.0。Adrian 在 Spring 2.0 参考手册中撰写了一章关于新 AOP 功能的优秀章节。本章更慢地讲解。它基于第 3 章中的 AOP 概念,并介绍了 Aspects 和 AspectJ 切点语言。它基于 @AspectJ 风格,但也介绍了在 XML 中声明 Aspects 和 Advisors 的方法。它还介绍了自动代理创建,这是 Spring 2.0 中的一个关键特性,尽管它在 Spring 1.x 中就已经可用。所有 Spring 用户都必须阅读本章。
书的后面有第 2、3 和 4 章的练习,这些练习提供了额外的上下文,并帮助读者获得 Spring 的实践经验。
第 5 章介绍了数据访问。当我第一次写这章时,它很短,介绍了 Spring 的数据访问框架。然后我意识到让用户更好地理解数据访问的挑战会很有趣。所以我重写了这章,现在它的一半内容介绍了典型的数据访问问题:管理数据库资源、数据访问异常问题、事务管理问题以及数据访问对应用程序的整体影响。接下来,它介绍了 Spring 如何解决这些各种问题以及如何在应用程序中找到数据访问的正确位置。
第 6 章介绍了如何在应用程序中使用 JdbcTemplate 来使用 SQL 在数据库中插入、更新、选择和删除数据。
第 7 章是使用 Spring 的事务管理在应用程序中的实践介绍。它还介绍了 Spring 2.0 中简单的事务管理配置。你知道 Spring 2.0 提供了 6 种(!) 配置事务管理的方法吗?真是灵活。
第 8 章介绍了 Spring MVC 的实践操作。它概述了典型的 Web 层,然后介绍了 Spring MVC 的组件。它有三个例子,从分页的只读列表到复杂的表单处理。对于想要了解 Spring MVC 的现有 Spring 用户来说,这是一个很棒的章节。它还介绍了 Spring 2.0 JSP 表单标签。
第 9 章是实践操作,介绍了 Spring MVC 支持的一些视图技术,如 JSTL、Velocity、Freemarker、XSLT、PDF、Excel 和 JasperReports。
最后,第 10 章介绍了测试。它强调了测试以及 JUnit、EasyMock 和 Spring 类编写集成测试(有些人称之为功能测试)的重要性。
在这本书中,我们使用了一个示例应用程序,该应用程序处理管理网球俱乐部和网球锦标赛的许多方面。我们认为,如果读者和 Spring 用户群体总体上能够访问一个相当复杂的示例应用程序,那就太好了。它为我们提供了一种很好的方法来分享我们关于 Spring 如何融入实际应用程序的理念。我们仍在努力完成示例应用程序,但我可以告诉你,它将包含大量关于我们选择的用于设计和配置的额外阅读材料。
正如你所注意到的,本书没有介绍 Hibernate。我们觉得从头开始正确解释 Hibernate *以及*如何将其与 Spring 一起使用太难了。最后,我们改变了主意,认为如果读者可以获得一些 Hibernate 材料会很好。因此,将有一个在线提供的额外附录,介绍 Hibernate 背后的基本思想以及 Spring 如何促进其使用。对于那些在对象关系映射工具方面尚未涉足的人来说,这是一个起点。
那么这本书什么时候上市呢?根据目前的计划,这本书将于十月底上市。你现在就可以预订。我们希望 Spring 用户会喜欢这本书。我会在接下来的几周里随时告知我们取得的进展。