内 容 提 要 本书以 Spring 应用程序开发为中心,全面讲解如何运用 Spring Boot 提高效率,使应用程序的开发和管 理更加轻松有趣。作者行文亲切流畅, 以大量示例讲解了 Spring Boot 在各类情境中的应用, 内容涵盖起步依赖、 Spring Boot CLI、Groovy、Grails、Actuator。对于 Spring Boot 开发应用中较为繁琐的内容,附录奉上整理完 毕的表格,一目了然,方便读者查阅。 本书适合全体 Java 开发人员。 ◆ 著    [美] Craig Walls 译    丁雪丰 责任编辑 朱 巍 执行编辑 张 憬 责任印制 彭志环 ◆ 人民邮电出版社出版发行  北京市丰台区成寿寺路11号 邮编 100164  电子邮件 315@ptpress.com.cn 网址 http://www.ptpress.com.cn 北京      印刷 ◆ 开本:800×1000 1/16 印张:14 字数:331千字 印数:1 — 3 500册 著作权合同登记号 2016年 9 月第 1 版 2016年 9 月北京第 1 次印刷 图字:01-2016-4638号 定价:59.00元 读者服务热线:(010)51095186转600 印装质量热线:(010)81055316 反盗版热线:(010)81055315 广告经营许可证:京东工商广字第 8052 号 4 前 言 译者序 时光回到2004年,Spring Framework 1.0正式发布,同年,Rod Johnson的Expert one-on-one J2EE Development without EJB一经出版就震撼了整个Java世界。不知不觉,12年就这么过去了,Spring 已然成为Java应用开发的事实标准,影响着无数Java开发者。 刚才打开Spring的官网,已经能看到Spring Framework 5.0.0 SNAPSHOT的身影了,而Spring 的家族也早就不再是Spring Framework一枝独秀,Spring Data、Spring Batch、Spring Security等一 大堆名字让人看得眼花缭乱。其中最引人瞩目的无疑就是Spring Boot了,它正是本书的主角。 Spring Boot从无数知名企业的实践中吸取经验,总结并落实到框架中。如果说Spring Framework的目标是帮助开发者写出好的系统,那Spring Boot的目标就是帮助开发者用更少的代 码,更快地写出好的生产系统。 Spring Boot为开发者带来了更好的开发体验,但写完代码只是万里长征路上的一小步,后续的 运维工作才是让很多人真正感到无助的。Spring Boot在运维方面做了很多工作,部署、监控、度量, 无一不在其涉猎范围之内,结合Spring Cloud后还可以轻松地实现服务发现、服务降级等功能。 2014年,Spring Source的Josh Long在向我介绍Spring Boot时,我不断重复一句话:“这个功 能我们也做了。”的确,国内的百度、阿里、腾讯,国外的Amazon、Facebook、Twitter、Netflix 等一票大公司都在框架和系统建设上有大量投入,为了提升性能和可用性,大家做了很多卓有成 效的工作。现在,Spring Boot让人人都能享受业内顶级公司的“福利”,站在巨人的肩膀之上, 想想都让人觉得兴奋。 说起为何想要翻译本书,那只能说是缘分使然。笔者当年在机缘巧合之下与Spring结缘,也 因它结识了很多朋友。毫不夸张地说,是Spring开启了我的作译者生涯,先后参与了Spring官方 文档、 《Spring专业开发指南》和《Spring攻略》的翻译。 本以为在完成了30岁前每年翻译一本书的目标后,我应该不会再去翻译什么东西了,甚至在 向图灵的编辑推荐本书时,我都没有想到最后会是自己来翻译这本书。不得不感叹一声,缘分就 是如此妙不可言的东西。相信后续Spring Boot会有更好地发展,因为它牢牢抓住了开发者的需求。 Craig的《Spring实战》已经到了第4版,本书应该也会有第2版,此时此刻正捧着本书的您会成为 它的译者吗?至少让我们一起来为自己喜欢的技术贡献一份力量吧。 丁雪丰 2016年7月于上海 序 1 1 序 2 3 2014年春天,Netflix的交付工程团队开始着手实现一个伟大的目标——通过一个软件平台来 实现端到端的全局持续交付,该平台有利于系统的可扩展性及弹性。为了满足Netflix的交付与部 署需要,我的团队曾构建了两套不同的应用程序,但这两套应用程序都有演变成庞然大物的趋势, 而且都没能满足灵活性和弹性的目标。更重要的是,这些庞大的应用程序最终还拖了我们的后腿, 让我们跟不上合作伙伴的创新步伐。用户开始回避我们的工具,而不是使用它们。 很明显,如果想要向公司证明自己的真正价值并快速创新,我们需要把庞然大物分解成小的 独立服务,这些服务要能随时发布。拥抱微服务架构给我们带来了希望,让我们能实现灵活性与 弹性的双重目标。但是我们需要在一个可靠的基础上实现这一架构,它要能实现真正的并发、合 理的监控、可靠易用的服务发现,运行时还要有极好的性能。 我们要在JVM上寻找一款框架,它要直接提供快速开发的能力和强大的运维能力。最终,我 们找到了Spring Boot。 Spring Boot能用寥寥数行代码构建一套基于Spring并满足生产要求的服务,不费吹灰之力! 实际上,一个简单的Spring Boot Hello World应用程序能放进一条推文里,这在短短几年之前还是 完全不可能的事情。它还自带了不少非功能性的特性,比如安全、度量、健康检查、内嵌服务器 和外置配置,这些都让选择Spring Boot成为了一件顺理成章的事情。 然而,踏上Spring Boot之旅后,我们却发现手头没有好的文档。要搞明白怎么利用好框架的 特性,只能依靠源码,这可不是个让人愉快的办法。 Manning那本著名的《Spring实战》的作者再度接受挑战,将Spring Boot的核心用法写成了另 一本好书,对此我一点都不吃惊。毫无疑问,Craig和Manning的团队又做成了一件了不起的大事! 正如我们所料,《Spring Boot实战》是一本通俗易懂的好书。 从第1章引人入胜的介绍以及富有传奇色彩的90字符推文应用程序,一直到第7章对Spring Boot的Actuator(提供了很多生产应用程序所需的神奇的运维特性)的深度分析, 《Spring Boot实 战》做到了知无不言,言无不尽。实际上,对我而言,第7章对Actuator的深度分析解答了不少问 题,这些问题自一年多以前我开始使用Spring Boot后,就一直萦绕在我的脑海里。第8章对部署 选项的透彻研究让我大开眼界,了解到Cloud Foundry在云部署方面是如此简便。第4章是我最喜 欢的章节之一,Craig揭示了很多强大的选项,它们能很方便地测试Spring Boot应用程序。从一开 始我就惊喜于Spring的测试特性,而Spring Boot将它们发挥得淋漓尽致。 正如上文中我所说的那样,Spring Boot正是十几年来Java社区所探寻的那种框架。它那简单 4 5 6 7 8 9 10 11 2 序 易用的开发特性和开箱即用的运维能力,让Java开发再度趣味横生。我欣然向大家宣布,Spring 和Spring Boot已经成为了Netflix新持续交付平台的基础。而且,Netflix的其他团队也参考了我们 的做法,因为他们也看到了Spring Boot的巨大益处。 我怀着兴奋与激动的心情,向大家强烈推荐Craig的书。作为Spring Boot的文档,本书可谓通 俗易懂、趣味横生,是Spring Boot征服Java社区后,大家翘首以盼的佳作。Craig浅显易懂的写作 风格,对Spring Boot核心特性与功能的全面分析,一定能让读者对Spring Boot有个彻底的认识(而 且在满心欢喜的同时还肃然起敬) 。 Craig加油!Manning出版社加油!那些开发出Spring Boot的天才开发者们加油!请你们一定 坚持下去!正是你们确保了JVM的光明未来。 Andrew Glover Netflix交付工程团队经理 前 言 1 1 前 言 2 3 在1964年的纽约世界博览会上,沃特·迪士尼向世界介绍了三件有开创意义的东西:“小小 世界” (it’s a small world)、 “与林肯先生共度的伟大时刻”(Great Moments with Mr. Lincoln)以 及“文明演进之旋转木马” (Carousel of Progress)。①所有这三样东西随后都搬进了迪士尼乐园和 迪士尼世界,你今天仍能看见它们。 其中,我最喜欢的是“文明演进之旋转木马”,这大约也是沃特·迪士尼的最爱之一。这既 是骑行,又是舞台表演,座位区域围绕着中心区域旋转,上演四场表演,讲述了一个家庭在20 世纪不同时代(分别是20世纪初、20世纪20年代、20世纪40年代和近年)的故事,突出了不同年 代技术的进步。从手摇洗衣机,到电灯和收音机,到自动洗碗机和电视,再到电脑和声控家电, 无一不在述说着创新的故事。② 在每幕表演中,父亲(也是演出的叙述者)都会讲述最新的发明,并带上一句“这玩意儿不 能更好了”,到头来却发现随着技术的进步,它的确变得更好了。 比起这场舞台演出,Spring的历史要短得多。但是对于Spring,我的感受和“演进老爹” (Progress Dad)对20世纪的体会相似。似乎每个Spring应用程序都让开发者的生活更上一个台阶, 仅从Spring组件的声明和织入方式就能看出端倪。让我们来看看Spring历史中的一些演化历程。  Spring 1.0的出现彻底改变了我们开发企业级Java应用程序的方式。Spring的依赖注入与声 明式事务意味着组件之间再也不存在紧耦合,再也不用重量级的EJB了。这玩意儿不能更 好了。  到了Spring 2.0,我们可以在配置里使用自定义的XML命名空间,更小、更简单易懂的配 置文件让Spring本身更便于使用。这玩意儿不能更好了。  Spring 2.5让我们有了更优雅的面向注解的依赖注入模型(即@Component和@Autowired 注解),以及面向注解的Spring MVC编程模型。不用再去显式地声明应用程序组件了,也 不再需要去继承某个基础的控制器类了。这玩意儿不能更好了。  到了Spring 3.0,我们有了一套基于Java的全新配置,它能够取代XML。在Spring 3.

pdf文档 Spring Boot实战 ,丁雪丰 (译者)

计算机 > SpringBoot > SpringBoot-1 > 文档预览
225 页 0 下载 609 浏览 0 评论 0 收藏 3.0分
温馨提示:如果当前文档出现乱码或未能正常浏览,请先下载原文档进行浏览。
Spring Boot实战 ,丁雪丰 (译者)  第 1 页 Spring Boot实战 ,丁雪丰 (译者)  第 2 页 Spring Boot实战 ,丁雪丰 (译者)  第 3 页 Spring Boot实战 ,丁雪丰 (译者)  第 4 页 Spring Boot实战 ,丁雪丰 (译者)  第 5 页
下载文档到电脑,方便使用
还有 220 页可预览,继续阅读
本文档由 user2021-02-28 13:27:01上传分享
给文档打分
您好可以输入 255 个字符
DocHub文库的中文名是什么?( 答案:多哈 )
评论列表
  • 暂时还没有评论,期待您的金玉良言