十萬個爲何之什麼是SpringBoot

1.什麼是springboot

簡單的說: spring boot就是整合了spring你們族衍生框架(Spring,SpringMVC...)各優勢的一個新框架;java

a)一種全新的編程規範,簡化了框架的使用,去除Spring衆多框架中所需的大量且繁瑣的配置文件 --- "習慣優於配置";mysql

b)敏捷開發Spring應用程序,專一於應用程序功能 -- 可獨立運行(運行jar,內嵌Servlet容器); web

2.Spring Boot 獨特性

鑑於有不少誤解,特區分下和咱們經常使用用於有什麼區別spring

  •  Spring Boot更多的是採用Java Config的方式,對Spring進行配置。
  • 配置簡單
    • 基於註解,及config
    • yml文件;
  • 部署簡單
    • 一鍵啓動
    • java -jar standalone.jar
  • 監控簡單: springBoot-actuator
    • 查看屬性配置
    • 線程工做狀態
    • 環境變量
    • JVM性能指標
    • RESTFul Path與服務類的映射關係
    • ...

3.Spring Boot核心

  • 自動配置 : 針對不少Spring應用程序常見功能,SpringBoot能自動提供相關配置;

以往,在任何的spring項目中,你都會找到Java配置或一大堆的XML配置文件,它們爲應用程序開啓了特定的特性和功能。看如下幾個例子: 
1.  web.xmlsql

這裏寫圖片描述

2.jdbcTemplateshell

這裏寫圖片描述

3.事務管理數據庫

這裏寫圖片描述

在以上三個例子中,不少配置都是複雜而且模板化,這提升了咱們開發的成本。而在springboot中這些都自動爲咱們作好了,讓開發人員更加專一於業務需求的開發。編程

  • 起步依賴: 告訴Spring Boot須要什麼功能

 

  • 命令行界面: SpringBoot可選特性,無需傳統建立,快速搭建項目
  • Actuator: 提供在運行時檢視應用程序內部狀況的能力

Actuator則要提供在運行時檢視應用程序內部狀況的能力。安裝了Actuator就能窺探應用程序的內部狀況了,包括以下細節:springboot

  1. Spring應用程序上下文裏配置的Bean
  2. Spring Boot的自動配置作的決策
  3. 應用程序取到的環境變量、系統屬性、配置屬性和命令行參數
  4. 應用程序裏線程的當前狀態
  5. 應用程序最近處理過的HTTP請求的追蹤狀況
  6. 各類和內存用量、垃圾回收、Web請求以及數據源用量相關的指標

Actuator經過Web端點和shell界面向外界提供信息。若是要藉助shell界面,你能夠打開SSH(Secure Shell),登入運行中的應用程序,發送指令查看它的狀況。框架

  • 內嵌容器: 可獨立運行
  • YML配置文件: 區別於傳統Properties文件方式

傳統項目中使用properties文件做爲key-value的載體,但其缺點也是明顯的。會重複的進行鏈式配置,而YML文件則避免了這個問題。

Properties文件方式

#Properties配置數據庫鏈接
spring.datasource.url=jdbc:mysql://localhost:3306/config
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

Yml文件方式

#YML配置數據庫鏈接
Spring:
Datasource: 
    url: jdbc:mysql://localhost:3306/config
    username: root
    password: 123456
    driver-class-name: com.mysql.jdbc.Driver

 

這裏發現一個有意思的 springoot中文文檔,也很詳細了;

http://blog.geekidentity.com/spring/spring_boot_translation/

相關文章
相關標籤/搜索