- Spring Boot開發實戰
- 陳光劍
- 2018字
- 2019-01-05 10:00:19
前言
Spring Boot是由Pivotal團隊提供的全新框架,其設計目的是簡化新Spring應用的初始搭建以及開發過程。在Java開發領域中,有很多著名框架都是Pivotal團隊的產品,如:Spring框架及其衍生框架、緩存Redis、消息隊列框架RabbitMQ、Greenplum數據庫等。還有Tomcat、Apache Http Server、Groovy里的一些頂級開發者、DevOps理論的提出者都屬于Pivotal團隊。Spring團隊在現有Spring框架的基礎上,開發了一個新框架:Spring Boot,用來簡化配置和部署Spring應用程序的過程,去除了那些煩瑣的開發步驟和樣板代碼及其配置,使得基于Spring框架的Java企業級應用開發“極簡化”。相比于傳統的Spring/Spring MVC框架的企業級應用開發(Spring的各種配置太復雜了,我們之前是用“生命”在搞這些配置), Spring Boot用簡單的注解和application.properties配置文件,避免了煩瑣而且容易出錯的XML配置文件,極大地簡化了基于Spring框架的企業級應用開發的配置。
Kotlin是由JetBrains團隊開發的多平臺、靜態類型、強工程實用性的編程語言,Kotlin 100%兼容Java,比Java更強大、更安全、更簡潔、更優雅。Kotlin是Google公司的Android官方支持的開發語言。Spring官方也正式支持Kotlin語言,Spring Boot 2.0版本中為Kotlin提供了一流的支持。其實,在Spring Boot 2.0和Spring 5.0框架源代碼中,已經可以看到Kotlin代碼。
本書可以說是我對使用Spring Boot + Kotlin進行服務端開發的實戰和思考過程的粗淺總結。通過本書的寫作,加深了我對Spring Boot框架和Kotlin編程語言的理解,我深刻體會到了學無止境的含義。寫書的過程也是我系統學習與思考的過程,如果本書能夠對你有所幫助,將不勝欣慰。
如何閱讀本書
本書系統介紹了使用Spring Boot 2.0框架,并基于Gradle + Kotlin來開發企業級應用。希望通過簡練的表述,系統全面地介紹如何使用Spring Boot 2.0框架開發項目,每章的關聯度不大,讀者可根據自己的需求閱讀本書。
全書共分三大部分:
?第I部分Spring Boot框架基礎(第1~3章)
?第Ⅱ部分Spring Boot項目綜合實戰(第4~17章)
?第Ⅲ部分 Spring Boot系統監控、測試與運維(第18~20章)
建議初學者最好按照章節順序來閱讀本書。如果想直接使用Spring Boot框架進行項目的實戰,可以直接進入第Ⅱ部分,如果對Spring Boot應用的監控、測試與運維感興趣,那么可以從第Ⅲ部分直接開始閱讀。
本書共20章,各個章節內容簡介如下。
第1章:簡單介紹了Spring Boot框架的歷史、組成、特性等。
第2章:使用Spring Boot 2.0快速實現一個基于Kotlin和Gradle的HelloWorld應用。
第3章:介紹Spring Boot是怎樣通過自動配置實現“極簡化配置”的應用開發。
第4章:介紹如何使用Spring Boot集成MyBatis來進行數據庫層開發。
第5章:介紹如何使用Spring Boot集成Spring Data JPA來進行數據庫層開發。
第6章:介紹如何開發一個Gradle插件,以及如何簡化開發過程中樣板代碼的編寫。
第7章:介紹Kotlin編程語言,以及如何集成Spring Boot和Spring MVC進行服務端開發。
第8章:介紹在Spring Boot項目中怎樣自定義Web MVC配置。
第9章:介紹基于Spring Boot + Spring MVC,使用AOP + Filter如何實現一個簡單的用戶登錄鑒權與權限控制系統。
第10章:介紹如何使用Spring Boot集成Spring Security開發一個自動化測試平臺。
第11章:介紹Spring Boot集成React.js開發前后端分離項目的實戰案例。
第12章:介紹如何開發任務調度、郵件服務等系統功能。
第13章:介紹如何用Spring Boot集成WebFlux開發響應式Web應用。
第14章:介紹在Spring Boot項目開發中怎樣使用Spring Cache實現數據的緩存。
第15章:介紹如何使用Spring Session集成Redis實現Session共享,從而實現水平擴展。
第16章:介紹如何使用Netflix Zuul實現一個微服務API Gateway來完成簡單代理轉發和過濾器功能。
第17章:詳細介紹Spring Boot應用的日志配置與使用,主要介紹Logback日志框架。
第18章:介紹如何使用Spring Boot Actuator和Spring Boot Admin實現監控與管理。
第19章:介紹Spring Boot應用的測試,以及如何在實際項目中進行分層測試。
第20章:介紹如何使用Docker來構建部署運行Spring Boot應用。
誰適合閱讀本書
本書適合于所有Java、Kotlin程序員,以及任何對編程感興趣的朋友。如果你目前還不是程序員,但想進入企業級應用開發的編程世界,那么你也可以嘗試從本書開始學習。
雖然書中的部分內容需要一定的Java和Kotlin編程基礎,還需要了解Spring框架,但是如果你想快速開始企業級應用開發,不妨從這里開始——Spring Boot 2.0 + Kotlin,這種方式的極簡特性定能激發你對編程的興趣。
代碼下載
每章末尾基本上都附了該章示例工程源代碼地址。這些源碼都在https://github.com/Easy-SpringBoot.可以根據需要,自由克隆下載學習。
致謝
在本書的寫作出版過程中,得到了很多人的幫助和陪伴。首先要感謝的是我的妻子和兩個可愛的孩子。正是有了你們的陪伴,我的生活才更加有意義。我始終感謝我的父母,雖然你們可能不知道我寫的東西是什么,但是因為有了你們的辛勤養育,我才能長成今天的我。我要衷心地感謝吳怡編輯。在本書的寫作修改過程中,她耐心細致地對稿件進行了詳盡、細致的審閱和批注,還提出了很多寶貴的修改建議。感謝本書出版過程中所有付出辛勤勞動的工作人員。我還要感謝在我的工作學習生活中認識的,所有朋友和同事們,能夠認識你們并跟你們一起學習共事,是我的榮幸。
請聯系我
雖然在本書寫作與修改的過程中,我竭盡全力追求簡單正確、清晰流暢地表達內容,但是限于自身水平和有限的時間,也許仍有錯誤與疏漏之處,還望各位讀者不吝指正。
關于本書的任何問題、意見或者建議都可以通過郵件universsky@163.com與我交流。
快樂生活,快樂學習,快樂分享,快樂實踐出真知。
最后,祝大家閱讀愉快!
陳光劍
2018年4月于杭州
- Mastering AWS Lambda
- Elastic Stack應用寶典
- JavaScript+Vue+React全程實例
- TradeStation交易應用實踐:量化方法構建贏家策略(原書第2版)
- Python算法從菜鳥到達人
- Python全棧數據工程師養成攻略(視頻講解版)
- Mastering C++ Multithreading
- Kubernetes進階實戰
- SQL Server 2012 數據庫應用教程(第3版)
- MATLAB 2020 GUI程序設計從入門到精通
- 從零開始構建深度前饋神經網絡:Python+TensorFlow 2.x
- JavaScript設計模式與開發實踐
- 面向物聯網的Android應用開發與實踐
- SAP HANA Starter
- Python程序設計案例教程