深入浅出Spring Boot 2.x这本书讲的是什么

简介: 本书章节编排合理,深入浅出地阐述了Spring Boot 2.x的原理与应用,以及当今较为流行的微服务系统经常用到的技术及原理,内容通俗易懂。

内容提要

Spring框架是Java EE开发的强有力的工具和事实标准,而Spring Boot采用“约定优于配置”的原则简化了Spring的开发,从而成为业界最流行的微服务开发框架,已经被越来越多的企业采用。2018年3月Spring Boot的版本正式从1.x升级到了2.x,为了适应新潮流,本书将对Spring Boot 2.x技术进行深入讲解。

本书从一个最简单的工程开始讲解Spring Boot企业级开发,其内容包含全注解下的Spring IoC和AOP、数据库编程(JDBC、JPA和MyBatis)、数据库事务、NoSQL(Redis和MongoDB)技术、Spring MVC、Spring 5新一代响应式框架WebFlux、互联网抢购业务、部署与监控、REST风格和Spring Cloud分布式开发等。

本书内容紧扣互联网企业的实际要求,从全注解下Spring知识讲到Spring Boot的企业级开发,对于Java开发人员,尤其是初学Spring Boot的人员和需要从传统Spring转向Spring Boot开发的技术人员,具有很高的参考价值。

前言

本书的缘起

当前互联网后端开发中Java EE占据了主导地位。对于Java EE开发,首选框架和事实标准是Spring框架。在传统的Spring开发中需要使用大量的XML配置才能使Spring框架运行起来,这备受许多开发者诟病。随着Spring 4.x的发布,Spring已经完全可以脱离XML,只使用注解就可以运行项目。近两三年里,互联网世界掀起了“微服务”热潮。“微服务”将一个大的系统拆分为多个子系统,然后通过REST风格的请求将它们集成起来,进一步简化了分布式系统的开发。为了进一步简化Spring的开发,2014年Spring Boot诞生了,它是一个由Pivotal团队提供的全新框架,其设计目的是简化Spring应用的搭建以及开发过程,并迎合时下流行的微服务思维,越来越多的企业选择了Spring Boot。随着2017年9月Spring 5.x的推出,2018年Spring Boot也推出了2.x版本,进入2.x版本时代。

基于这样的趋势,在我和朋友合作创作完成《Java EE互联网轻量级框架整合开发:SSM框架(Spring MVC+Spring+MyBatis)和Redis实现》后,收到了许多的读者、前同事和业内朋友的建议,他们希望我创作一本关于Spring Boot的书,来给需要学习Spring Boot的从业人员提供参考,这就是创作本书的缘起。Spring Boot采用了“约定优于配置”的规则,大部分情况下依赖它提供的starter后,就可以使用默认的约定,加上属性文件,做大量的自定义配置,使开发更为简单;对于部署,Spring Boot提供了内嵌服务器,和Maven(或Grandle)打包,进一步降低了企业部署的难度;对于测试,它提供了快速测试的环境,进一步提高了开发效率,因此它渐渐成为中小型企业甚至是一些大型企业开发的主流选择。加之在互联网世界中,分布式已经是一种必然的趋势,而分布式的治理和组件研发成本并非一般公司所能承担,为此Spring社区还在Spring Boot的基础上提供了Spring Cloud分布式开发组件,从而进一步简化了企业级分布式开发,这让Spring Boot和Spring Cloud都站到了互联网后端开发的主流方向上,越来越受到企业的青睐。

本书的安排

Spring Boot不是代替Spring,而是使Spring项目可以更加快速地开发、部署和测试。它采用了“约定优于配置”的理念,在其内部提供了大量的starter,而这些starter又提供了许多自动配置类,让开发者可以奉行“拿来主义”,开箱即用。虽然这样能够快速地开发、部署和测试,但是也会带来很大的问题,那就是,如果不懂Spring的原理,一旦出现开发的问题,开发者就很容易陷入困境,难以找到问题的根源,造成开发者的困扰。所以要学习Spring Boot就必须掌握Spring的基础知识。基于这种情况,本书会结合Spring的原理讨论Spring Boot的应用。

版权:人民邮电出版社