《Spring Boot開發:從0到1》大綱結構

《Spring Boot開發:從0到1》 大綱結構v2.0

第一部分Spring Boot基礎

第1章 Spring Boot史前簡述
1.1 J2EE(Java 2 Platform Enterprise Edition)簡介
1.2 Java企業級開發框架概述
1.3 Spring生態系統
1.4 Spring JavaConfig

第2章 Spring Boot簡介
2.1 用Spring Boot創造一切
2.2 Spring Boot起源
2.3 Spring Boot在Spring生態中的構成
2.3.1 Spring生態頂級項目
2.3.2 Spring cloud子項目
2.4 Spring Boot核心組件
2.5 Spring Boot版本歷史
2.6 Spring Boot學習成本

第3章 Spring Boot快速開始Hello World
3.1 Spring Boot CLI groovy版Hello World
3.2 常規Java版Hello World

第4章 零XML配置的Spring Boot Application
4.1 application.properties
4.2 Spring Boot屬性配置和使用
4.2.1配置的優先級
4.2.2命令行參數配置
4.2.3 random.*屬性配置
4.2.4屬性文件配置
4.2.5 YAML格式的配置文件
4.2.6使用 Java配置類
4.3使用CommandLineRunner執行初始化加載

第5章 Spring Boot自動配置原理
5.1 Spring Boot的核心組件模塊
5.2 Spring Boot Starters
5.3 @EnableAutoConfiguration自動配置原理
5.4 FreeMarkerAutoConfiguration自動配置的實例分析
5.5 spring.factories與定義應用程序的初始化行為

第二部分 Spring Boot集成

第6章 Spring Boot數據庫集成
6.1 Spring Boot集成mybatis
6.2 Spring Boot集成jpa
6.3 Spring Boot集成多數據源
6.4 Spring Boot集成Druid監控數據庫
6.5 Spring Boot集成mongodb開發

第7章 Spring Boot集成模板引擎
7.1 Spring Boot集成jsp模板
7.2 Spring Boot集成thymeleaf模板
7.3 Spring Boot集成velocity模板
7.4 Spring Boot集成freemarker模板
7.5 Spring Boot集成groovy模板

第8章 Spring Boot集成開發
8.1 Spring Boot集成Groovy混合Java開發
8.2 Spring Boot集成Groovy、Grails開發
8.3 Spring Boot集成Scala混合Java開發
8.4 Spring Boot集成Kotlin混合Java開發
8.5 Spring Boot集成Swagger2構建自動化Rest API文檔
8.6 Spring Boot集成Spring Security
8.7 Spring Boot集成日志
8.8 Spring Boot靜態資源處理

第9章 Spring Boot開發者工具
9.1 Spring Boot maven plugin
9.2 Spring Boot gradle plugin
9.3 Spring Boot熱部署
9.4 Spring Boot遠程調試

第10章 Spring Boot應用部署運維
10.1 Spring Boot應用運行
10.2使用Spring Cloud部署
10.3使用Docker快速部署

第11章 Spring Boot應用監控
11.1 使用Spring Boot Actuator監控應用
11.2 Spring Boot遠程Shell

第12章 Spring Boot與微服務
12.1 微服務架構
12.2 使用Spring Boot創建微服務

第三部分 問題解決

第13章 常見問題與解決方案
13.1 Spring MVC 關于controller的字符編碼
13.2 Spring Boot啟動報錯
13.3 javax.servlet.ServletException
13.4 庫依賴沖突問題
13.5 org.apache.catalina.LifecycleException
13.6 @EnableMongoRepositories路徑配置
13.7 Logging system failed to initialize using configuration from 'logback.xml '
13.8 java.lang.IllegalArgumentException: Request header is too large
13.9 No handler found for GET /swagger-ui.html

附錄

附錄A 計算機的0和1
附錄B 編程的本質
附錄C Java編程簡史


《Springboot極簡教程》大鋼結構v1.0.1

《Springboot極簡教程》2017.4.19.png

《Springboot極簡教程》

第O部分 Spring Boot簡介

第1章 Spring Boot史前簡述

1.1 J2EE(Java 2 Platform Enterprise Edition)簡介

1.2 Java企業級開發框架概述

1.3 Spring生態系統

1.4 Spring JavaConfig

小結

參考資料

第2章 Spring Boot簡史

2.1 用SpringBoot創造一切吧

2.2 SpringBoot起源

2.3 SpringBoot在整個Spring生態中

2.3.1 Spring生態頂級項目

2.3.2 Spring cloud子項目

2.4 SpringBoot核心組件

2.5 SpringBoot版本歷史

2.6 SpringBoot學習成本

小結

第一部分 SpringBoot的核心

第3章 一鍵啟動應用程序

3.1 SpringBoot版的Restful Hello,World

3.1.1 Spring Boot CLI groovy版Hello World

3.1.2 常規的Java版的Hello World

3.2 啟動Springboot的自動配置@EnableAutoConfiguration

第4章 零XML配置的Springboot Application

4.1 application.properties

4.2 配置文件說明

第5章 Springboot功能模塊和核心組件

第二部分 SpringBoot集成

第6章 Springboot數據庫集成

6.1 Spring Boot集成mybatis

6.2 Spring Boot集成jpa

第7章 Spring Boot集成模板引擎

7.1 Spring Boot集成jsp模板

7.2 Spring Boot集成thymeleaf模板

7.3 Spring Boot集成velocity模板

7.4 Spring Boot集成freemarker模板

7.5 Spring Boot集成groovy模板

第8章 Spring Boot集成Groovy混合Java開發

第9章 Spring Boot集成Groovy,Grails開發

第10章 Spring Boot集成Scala混合Java開發

第11章 Spring Boot集成Kotlin混合Java開發

第12章 Springboot集成mongodb開發

第13章 Spring Boot集成Swagger快速構建REST API文檔

第14章 Spring Boot安全集成Spring Security

第15章 Spring Boot日志集成

第16章 Spring Boot微服務和DevOps

第三部分 問題解決

常見問題&解決

Spring MVC 關于controller的字符編碼

Springboot啟動報錯 Whitelabel Error Page: This application has no explicit mapping for

javax.servlet.ServletException: Circular view path [login]: would dispatch back to the current handler URL [/login] again

庫依賴沖突問題:Detected both log4j-over-slf4j.jar AND slf4j-log4j12.jar on the class path, preempting StackOverflow

org.apache.catalina.LifecycleException: A child container failed during start

@EnableMongoRepositories路徑配置:APPLICATION FAILED TO START: Parameter 0 of constructor in

Logging system failed to initialize using configuration from 'logback.xml '

第四部分 附錄

附錄1 計算機簡史

1.0 一切皆是映射

1.1 二進制01與易經陰陽

1.2 向上抽象封裝一層

1.3 編程之初:從機械計算機到能接受指令的計算機

1.3.1 機械計算機簡史

1.3.2 能接受指令的計算機

小結

附錄2 編程的本質

2.0 什么是編程

2.1 結構化程序設計

2.2 怎樣解決問題

2.3 層次化分解與復合

2.4 面向對象編程(OOP)

2.5 函數式編程(FP)

2.6 混合式編程(HP)

小結

附錄3 編程簡史

1940之前

1940年代

1950與1960年代

1967-1978:確立基礎范式

1980年代:增強、模塊、性能

1990年代:互聯網時代

當今的趨勢

編程語言發展史上的杰出人物

名詞紀要

參考資料

附錄4 Java編程簡史

從GOTO到OOP

Java簡史

JVM上的語言家族

用哪種 JVM 語言?

《Springboot極簡教程》大鋼結構v1.0.0

《Springboot極簡教程》

第O部分 Spring Boot簡介

第1章 Spring Boot史前簡述

1.1 循證架構

1.2 Java元編程

1.2.1 元編程(meta-programming)

1.3 Java主流框架概述

1.3.1 Struts

1.3.2 Hibernate

1.3.3 Spring框架

1.4 Spring生態系統

1.5 Spring JavaConfig

1.5.1 JavaConfig簡介

1.5.2 JavaConfig與注解驅動配置

小結

第2章 Spring Boot簡史

2.1 用SpringBoot創造一切吧

2.2 SpringBoot起源

2.3 SpringBoot在整個Spring生態中

2.3.1 Spring生態頂級項目

2.3.2 Spring cloud子項目

2.4 SpringBoot核心組件

2.5 SpringBoot版本歷史

2.6 SpringBoot學習成本

小結

第一部分 SpringBoot的核心

第3章 一鍵啟動應用程序

3.1 SpringBoot版的Restful Hello,World

3.1.1 Spring Boot CLI groovy版Hello World

3.1.2 常規的Java版的Hello World

3.2 啟動Springboot的自動配置@EnableAutoConfiguration

第4章 零XML配置的Springboot Application

4.1 application.properties

4.2 配置文件說明

第5章 Springboot功能模塊和核心組件

第二部分 SpringBoot集成

第6章 Springboot數據庫集成

6.1 Spring Boot集成mybatis

6.2 Spring Boot集成jpa

第7章 Spring Boot集成模板引擎

7.1 Spring Boot集成jsp模板

7.2 Spring Boot集成thymeleaf模板

7.3 Spring Boot集成velocity模板

7.4 Spring Boot集成freemarker模板

7.5 Spring Boot集成groovy模板

第8章 Spring Boot集成Groovy,Grails開發

第9章 Spring Boot集成Scala混合Java開發

第10章 Spring Boot集成Kotlin混合Java開發

第11章 Springboot集成mongodb開發

第12章 Spring Boot集成Swagger快速構建REST API文檔

第13章 Spring Boot微服務和DevOps

第三部分 問題解決

常見問題&解決

第四部分 附錄

附錄1 計算機簡史

1.0 一切皆是映射

1.1 二進制01與易經陰陽

1.2 向上抽象封裝一層

1.3 編程之初:從機械計算機到能接受指令的計算機

1.3.1 機械計算機簡史

1.3.2 能接受指令的計算機

小結

附錄2 編程的本質

2.0 什么是編程

2.1 結構化程序設計

2.2 怎樣解決問題

2.3 層次化分解與復合

2.4 面向對象編程(OOP)

2.5 函數式編程(FP)

2.6 混合式編程(HP)

小結

附錄3 編程簡史

附錄4 Java編程簡史

《Springboot極簡教程大綱結構v1.0.0》

《Spring Boot極簡教程》大綱結構v0.0.3

《Springboot極簡教程》2017.4.6

《Springboot極簡教程》

第O部分 編程總論

第1章 編程總論

第2章 Java編程簡史

第一部分 SpringBoot的核心

第3章 Spring Boot史前簡述

3.1 循證架構

3.2 Java元編程

3.2.1 元編程(meta-programming)

3.3 Java主流框架概述

3.3.1 Struts

3.3.2 Hibernate

3.3.3 Spring框架

3.4 Spring生態系統

3.5 Spring JavaConfig

3.5.1 JavaConfig簡介

3.5.2 JavaConfig與注解驅動配置

小結

第4章 Spring Boot簡史

4.1 用SpringBoot創造一切吧

4.2 SpringBoot起源

4.3 SpringBoot在整個Spring生態中

4.3.1 Spring生態頂級項目

4.3.2 Spring cloud子項目

4.4 SpringBoot核心組件

4.5 SpringBoot版本歷史

4.6 SpringBoot學習成本

小結

第5章 一鍵啟動應用程序

5.0 SpringBoot版的Restful Hello,World

5.0.1 Spring Boot CLI groovy版Hello World

5.0.2 常規的Java版的Hello World

5.1 啟動Springboot的自動配置@EnableAutoConfiguration

第6章 零XML配置的Springboot Application

6.0 application.properties

6.1 配置文件說明

第7章 Springboot功能模塊和核心組件

第8章 Springboot數據庫集成mybatis,jpa

8.0 Spring Boot集成mybatis

8.1 Spring Boot集成jpa

第9章 Spring Boot集成模板引擎jsp, thymeleaf, velocity, freemarker, groovy

9.0 Spring Boot集成jsp模板

9.1 Spring Boot集成thymeleaf模板

9.2 Spring Boot集成velocity模板

9.2.1 配置pom依賴的velocity-starter

9.2.2 application.properties配置

9.2.3 Dao層代碼示例

9.2.4 Controller層代碼示例

9.2.5 執行定時任務

9.2.6 啟動類代碼&運行測試

9.3 Spring Boot集成freemarker模板

9.4 Spring Boot集成groovy模板

第二部分 SpringBoot集成

第10章 Spring Boot集成Groovy混合Java開發

第11章 Spring Boot集成Scala混合Java開發

第12章 Spring Boot集成Kotlin混合Java開發

第13章 Springboot集成mongodb開發

13.0 系統基本功能

13.1 系統技術框架

13.2 系統架構設計

13.3 數據庫環境配置

13.4 定義領域對象

13.5 核心業務邏輯實現

13.6 前端jsp設計

13.7 前端js代碼

13.8 運行效果

小結

第14章 Spring Boot集成Swagger快速構建REST API文檔

第15章 Spring Boot微服務和DevOps

第三部分 問題解決

常見問題&解決

第四部分 附錄

附錄1 計算機簡史

1.0 一切皆是映射

1.1 二進制01與易經陰陽

1.2 向上抽象封裝一層

1.3 編程之初:從機械計算機到能接受指令的計算機

1.3.1 機械計算機簡史

1.3.2 能接受指令的計算機

小結

附錄2 編程的本質

2.0 什么是編程

2.1 結構化程序設計

2.2 怎樣解決問題

2.3 層次化分解與復合

2.4 面向對象編程(OOP)

2.5 函數式編程(FP)

2.6 混合式編程(HP)

小結

《Spring Boot極簡教程》大綱結構v0.0.2

《Springboot極簡教程》

《Springboot極簡教程》

第O部分 編程總論

第1章 計算機簡史

1.0 一切皆是映射

1.1 二進制01與易經陰陽

1.2 向上抽象封裝一層

1.3 編程之初:從機械計算機到能接受指令的計算機

1.3.1 機械計算機簡史

1.3.2 能接受指令的計算機

小結

第2章 編程的本質

2.0 什么是編程

2.1 結構化程序設計

2.2 怎樣解決問題

2.3 層次化分解與復合

2.4 面向對象編程(OOP)

2.5 函數式編程(FP)

2.6 混合式編程(HP)

小結

第一部分 SpringBoot的核心

第3章 Spring Boot史前簡述

3.1 循證架構

3.2 Java元編程

3.2.1 元編程(meta-programming)

3.3 Java主流框架概述

3.3.1 Struts

3.3.2 Hibernate

3.3.3 Spring框架

3.4 Spring生態系統

3.5 Spring JavaConfig

3.5.1 JavaConfig簡介

3.5.2 JavaConfig與注解驅動配置

小結

第4章 Spring Boot簡史

4.1 用SpringBoot創造一切吧

4.2 SpringBoot起源

4.3 SpringBoot在整個Spring生態中

4.3.1 Spring生態頂級項目

4.3.2 Spring cloud子項目

4.4 SpringBoot核心組件

4.5 SpringBoot版本歷史

4.6 SpringBoot學習成本

小結

第5章 一鍵啟動應用程序

5.0 SpringBoot版的Restful Hello,World

5.0.1 Spring Boot CLI groovy版Hello World

5.0.2 常規的Java版的Hello World

5.1 啟動Springboot的自動配置@EnableAutoConfiguration

第6章 零XML配置的Springboot Application

6.0 application.properties

6.1 配置文件說明

第7章 Springboot功能模塊和核心組件

第8章 Springboot數據庫集成mybatis,jpa

8.0 Spring Boot集成mybatis

8.1 Spring Boot集成jpa

第9章 Spring Boot集成模板引擎jsp, thymeleaf, velocity, freemarker, groovy

9.0 Spring Boot集成jsp模板

9.1 Spring Boot集成thymeleaf模板

9.2 Spring Boot集成velocity模板

9.2.1 配置pom依賴的velocity-starter

9.2.2 application.properties配置

9.2.3 Dao層代碼示例

9.2.4 Controller層代碼示例

9.2.5 執行定時任務

9.2.6 啟動類代碼&運行測試

9.3 Spring Boot集成freemarker模板

9.4 Spring Boot集成groovy模板

第二部分 SpringBoot集成

第10章 Spring Boot集成Groovy混合Java開發

第11章 Spring Boot集成Scala混合Java開發

第12章 Spring Boot集成Kotlin混合Java開發

第13章 Springboot集成mongodb開發

13.0 系統基本功能

13.1 系統技術框架

13.2 系統架構設計

13.3 數據庫環境配置

13.4 定義領域對象

13.5 核心業務邏輯實現

13.6 前端jsp設計

13.7 前端js代碼

13.8 運行效果

小結

第14章 Spring Boot集成Swagger快速構建REST API文檔

第15章 Spring Boot微服務和DevOps

第三部分 問題解決

常見問題&解決

《Spring Boot極簡教程》大綱結構v0.0.1

極簡SpringBoot教程.png

極簡SpringBoot教程

SpringBoot起源

項目背景

源代碼&文檔

https://github.com/spring-projects/spring-boot

http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/

解決了一個怎樣的問題

如何把這些子項目整合起來形成一個完整的解決方案。在如何使用這些組件上,并沒有相關的最佳實踐提供指導

springboot底層完全是spring,只是springboot幫你做掉了很多模板配置

Spring Boot 是 Spring 框架的一個新的子項目,用于創建 Spring 4.0 項目。它的開發始于 2013 年。2014 年 4 月發布 1.0.0 版本。它可以自動配置 Spring 的各種組件,并不依賴代碼生成和 XML 配置文件。

Spring Boot 的作用在于創建和啟動新的基于 Spring 框架的項目

spring生態

特性

創建可以獨立運行的 Spring 應用。

直接嵌入 Tomcat 或 Jetty 服務器,不需要部署 WAR 文件。

提供推薦的基礎 POM 文件來簡化 Apache Maven 配置。

盡可能的根據項目依賴來自動配置 Spring 框架。

提供可以直接在生產環境中使用的功能,如性能指標、應用信息和應用健康檢查。

沒有代碼生成,也沒有 XML 配置文件。

核心理念

約定優于配置(convention over configuration)

SpringBoot架構

核心模塊解決的核心問題

SpringBoot:快速開始 A Restful Hello,World

Spring boot注解

@configuration 相當于xml配置文件

@RestController Spring新加入的聲明Controller的注解

@component@service @Repository 聲明bean

@autowired  @Qualifier 注入bean

@SpringBootApplication = @Configuration @EnableAutoConfiguration @ComponentScan

@Import @ImportResource 導入配置文件

@Configuration 聲明配置類

@RestController 實現一個RESTful web services

@Component , @Service , @Repository , @Controller 聲明bean

@autowired  @Qualifier 注入

@Aspect等等支持AOP

@RequestMapping 注解地址映射,url pattern

實例

https://github.com/MiniSpringBootTutorial/spring-boot/tree/master/spring-boot-samples

SpringBoot Application啟動過程run流程圖

SpringBoot集裝箱starter

spring-boot-starter

spring-boot-starter-actuator

spring-boot-starter-jdbc

spring-boot-starter-data-jpa

spring-boot-starter-data-*

spring-boot-starter-security

spring-boot-starter-test

spring-boot-starter-web

寫一個自己定制的starter

properties/YAML配置PropertyConfig

Spring Boot 所提供的配置優先級順序比較復雜。按照優先級從高到低的順序:

配置優先級

命令行參數。(最高)

通過 System.getProperties() 獲取的 Java 系統參數。

操作系統環境變量。

從 java:comp/env 得到的 JNDI 屬性。

通過 RandomValuePropertySource 生成的“random.*”屬性。

應用 Jar 文件之外的屬性文件。

應用 Jar 文件內部的屬性文件。

在應用配置 Java 類(包含“@Configuration”注解的 Java 類)中通過“@PropertySource”注解聲明的屬性文件。

通過“SpringApplication.setDefaultProperties”聲明的默認屬性。

屬性文件

Spring Boot 提供的 SpringApplication 類會搜索并加載 application.properties 文件來獲取配置屬性值。SpringApplication 類會在下面位置搜索該文件。

當前目錄的“/config”子目錄。

當前目錄。

classpath 中的“/config”包。

classpath

YAML

spring:
profiles: development
db:
url: jdbc:hsqldb:file:testdb
username: sa
password:


spring:
profiles: test
db:
url: jdbc:mysql://localhost/test
username: test
password: test

模板引擎

jsp

velocity

freemarker

thymeleaf

內嵌web容器EmbeddedServletContainerCustomizer

tomcat

jetty

集成SpringMVC開發

spring-boot 加入攔截器Interceptor

WebMvcConfigurerAdapter: 一行代碼寫Controller

WebSecurityConfigurerAdapter

@ControllerAdvice系統全局統一異常處理

數據庫持久層

jpa

mybatis

mysql

mongodb

RESTful:Spring Boot with Mongodb

H2

應用監控endpoint

技術棧

算法,數據結構,編譯,架構,框架,分布式,項目管理,高性能,DB,系統(OS/網絡/存儲),JAVASCRIPT/CSS/html

Design Patterns

編程名言

以下內容收集自一些優秀的技術書籍章節開頭的名言佳句,非常有意思,直接或間接反映了軟件開發中的一些事情。

生命太短暫,不要去做一些根本沒有人想要的東西。——Ash Maurya,Running Lean 作者
如果你交給某人一個程序,你將折磨他一整天;如果你教某人如何編寫程序,你將折磨他一輩子。——David Leinweber
軟件設計有兩種方式:一種方式是,使軟件過于簡單,明顯沒有缺陷;另一種方式是,使軟件過于復雜,沒有明顯的缺陷。——C.A.R. Hoare
其實,我嘗試著使Ruby更自然,而不是簡單。Ruby看起來很簡單,但內部是非常復雜的,就像我們的身體一樣。——松本行弘,Ruby之父
大部分情況下,構建程序的過程本質上是對規范調試的過程。——Fred Brooks,《人月神話》作者
軟件開發往往是這樣:最開始的90%代碼占用了開始的90%的開發時間;剩下10%代碼同樣需要90%的開發時間。——Tom Cargill
當你試圖解決一個你不理解的問題時,復雜化就產成了。——Andy Boothe
用幾個小時來制定計劃,可以節省幾周的編程時間。—— 匿名
控制復雜性是計算機編程的本質。—— Brian Kernighan
計算機科學領域的所有問題都可以通過其他方式間接解決。——David Wheeler
編程是兩隊人馬在競爭:軟件工程師努力設計出最大最好的連白癡都會使用的程序;而宇宙在拼命制造最大最好的白癡。到目前為止,宇宙是勝利者。—— Rick Cook
調試一個初次見到的代碼比重寫代碼要困難兩倍。因此,按照定義,如果你寫代碼非常巧妙,那么沒有人足夠聰明來調試它。—— Brian W. Kernighan
我不是一個偉大的程序員,我只是一個具有良好習慣的優秀程序員。― Kent Beck
你們中大多數人都熟悉程序員的美德,有三種:那就是懶惰、急躁和傲慢。– Larry Wall,Perl語言發明人
任何一個傻瓜都會寫能夠讓機器理解的代碼,只有好的程序員才能寫出人類可以理解的代碼。——Martin Fowler
靠代碼行數來衡量開發進度,就像是憑重量來衡量飛機制造的進度。——比爾?蓋茨
這不是一個bug,這只是一個未列出來的特性。——匿名
作為一個程序員,郁悶的事情是,面對一個代碼塊,卻不敢去修改。更糟糕的是,這個代碼塊還是自己寫的。—— Peyton Jones
它在我的機器上可以很好運行!——大部分程序員
能說算不上什么,有本事就把你的代碼給我看看。——Linus Torvalds,Linux之父
我認為對象就像是生物學里的細胞,或者網絡中的一臺計算機,只能夠通過消息來通信——Alan Kay,Smalltalk的發明人,面向對象之父
當你選擇了一種語言,意味著你還選擇了一組技術、一個社區。——Joshua Bloch
質量、速度、廉價,選擇其中兩個。——匿名
過早的優化是罪惡之源。——Donald Knuth
沒有什么代碼的執行速度比空代碼更快。——Merb核心原則
如果你是房間里最聰明的人,那么你走錯房間了。——匿名
如果只需更改一個單一的代碼行,你的部門需要花費多長時間?——Mary Poppendieck
九個人不能讓一個孩子在一個月內出生。——Fred Brooks,《人月神話》作者
好代碼本身就是最好的文檔。當你需要添加一個注釋時,你應該考慮如何修改代碼才能不需要注釋。——Steve McConnell,Code Complete 作者
一個人在教會電腦之前,別說他真正理解這個東西了。——Donald Knuth

UNIX理念

工程構建

maven

gradle

基于Goovy的Gradle

Gradle的安裝非常方便,下載ZIP包,解壓到本地目錄,設置 GRADLE_HOME 環境變量并將 GRADLE_HOME/bin 加到 PATH 環境變量中,安裝就完成了。

類似于Maven的pom.xml文件,每個Gradle項目都需要有一個對應的build.gradle文件,該文件定義一些任務(task)來完成構建工作

代碼版本控制

git

svn

Kotlin

kotlin是由IntelliJ IDEA的開發商Jetbrain推出的一種基于JVM的開發語言,目標是簡化Java中很多繁瑣的設計,可以和Java無縫的集成

Springboot使用Kotlin和Java混合編程

微服務

以前一個大型應用程序搞定所有需求

現在更傾向于把大型應用程序切分成多個微服務,服務之間通過 RPC 調用

微服務架構的好處

服務之間相互隔離,減少宕機,不可用的概率

讓專門的api去負責專門的事情

small is beautiful

APIs as a product

DevOps(Development&Operations)

軟件生命周期融合

PD

Dev

QA

Ops

Rest API

使用Spring Boot&Swagger快速構建REST API并生成優美的API文檔

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,327評論 6 537
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,996評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,316評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,406評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,128評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,524評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,576評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,759評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,310評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,065評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,249評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,821評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,479評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,909評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,140評論 1 290
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,984評論 3 395
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,228評論 2 375

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,807評論 18 139
  • Spring Boot 參考指南 介紹 轉載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,900評論 6 342
  • 文|璇子 那一縷清風 解不開夜深人靜的謎語 那蕩漾在湖泊上的波痕 水草倒映著顫顫的孤影 著了誰的迷,夜的荒涼 卻成...
    花非物欲閱讀 254評論 0 4
  • 一首歌,一張照片,太容易被時光附上意義。它們說不上伴你成長,卻總在不經意間。出現在你的腦海里,填充些什么。 ▁▁▁...
    三層樓閱讀 541評論 4 5
  • 是的,在《人民的名義》后,我迷上了《我的前半生》。師太的書沒看過一本,身邊有朋友對師太甚是喜歡,但說實話我真的不...
    她叫我郭大寶閱讀 402評論 0 2