1. 程式人生 > >Spring Boot 探索之旅(一)——Spring Boot 簡介

Spring Boot 探索之旅(一)——Spring Boot 簡介

一、什麼是Spring Boot

隨著技術日新月異的發展,如今的軟體設計已不想曾經那般單一。業務複雜,功能繁瑣,大量三方元件的相互整合,成為了開發的一大難題。幸而,Spring Boot如同一道曙光,為我們java開發者帶來了福音,讓我們擺脫專案構架時各種配置的鬧心,得以專心於專案邏輯的編寫。

Spring Boot 的核心理念是“習慣優於配置”,它讓大量依賴預設整合成為了可能。藉助於Spring Boot 我們能做到以下幾點:

1:對主流框架,不需要任何xml配置,即可預設整合

2:內嵌tomcat等伺服器容器,無需打包為war,直接java -jar快捷部署執行

3:實時監控整個專案的執行狀況

4:採用bean或者xml形式,引入自定義配置

二、Spring Boot的主要依賴

2.1  Spring Boot應用程式啟動器

名稱

描述

spring-boot-starter

核心啟動器,包括自動配置支援,日誌記錄和YAML

spring-boot-starter-activemq

使用Apache ActiveMQ進行JMS訊息傳遞

spring-boot-starter-amqp

使用Spring AMQP和Rabbit MQ

spring-boot-starter-aop

使用Spring AOP和AspectJ進行面向方面程式設計

spring-boot-starter-artemis

使用Apache Artemis進行JMS訊息傳遞

spring-boot-starter-batch

使用Spring Batch批量處理

spring-boot-starter-cache

提供Spring Framework的快取支援

spring-boot-starter-cloud-connectors

使用Spring Cloud Connectors的簡化了Cloud Foundry和Heroku等雲平臺中的服務連線

spring-boot-starter-data-cassandra

使用Cassandra分散式資料庫和Spring Data Cassandra

spring-boot-starter-data-cassandra-reactive

使用Cassandra分散式資料庫和Spring Data Cassandra Reactive

spring-boot-starter-data-couchbase

使用Couchbase面向文件的資料庫和Spring Data Couchbase

spring-boot-starter-data-couchbase-reactive

使用Couchbase面向文件的資料庫和Spring Data Couchbase Reactive

spring-boot-starter-data-elasticsearch

使用Elasticsearch搜尋和分析引擎以及Spring Data Elasticsearch

spring-boot-starter-data-jdbc

使用Spring Data JDBC

spring-boot-starter-data-jpa

使用Spring Data JPA與Hibernat

spring-boot-starter-data-ldap

使用Spring Data LDAP

spring-boot-starter-data-mongodb

使用MongoDB面向文件的資料庫和Spring Data MongoDB

spring-boot-starter-data-mongodb-reactive

使用MongoDB面向文件的資料庫和Spring Data MongoDB Reactive

spring-boot-starter-data-neo4j

使用Neo4j圖形資料庫和Spring Data Neo4j

spring-boot-starter-data-redis

與Spring Data Redis和Lettuce客戶端一起使用Redis鍵值資料儲存

spring-boot-starter-data-redis-reactive

使用Redis鍵值資料儲存與Spring Data Redis被動和Lettuce客戶端

spring-boot-starter-data-rest

使用Spring Data REST通過REST公開Spring Data儲存庫

spring-boot-starter-data-solr

使用Apache Solr搜尋平臺和Spring Data Solr

spring-boot-starter-freemarker

使用FreeMarker檢視構建MVC Web應用程式

spring-boot-starter-groovy-templates

使用Groovy模板檢視構建MVC Web應用程式

spring-boot-starter-hateoas

使用Spring MVC和Spring HATEOAS構建基於超媒體的RESTful Web應用程式

spring-boot-starter-integration

使用Spring Integration

spring-boot-starter-jdbc

將JDBC與HikariCP連線池一起使用

spring-boot-starter-jersey

spring-boot-starter-json

讀寫json

spring-boot-starter-jta-atomikos

使用Atomikos進行JTA交易

spring-boot-starter-jta-bitronix

使用Bitronix進行JTA事務

spring-boot-starter-mail

使用Java Mail和Spring Framework的電子郵件傳送支援

spring-boot-starter-mustache

使用Mustache檢視構建Web應用程式

spring-boot-starter-oauth2-oidc-client

使用Spring Security的OAuth2 / OpenID Connect客戶端功能

spring-boot-starter-quartz

使用Quartz排程程式

spring-boot-starter-security

使用Spring Security 許可權管理

spring-boot-starter-test

使用JUnit,Hamcrest和Mockito等庫來測試Spring Boot應用程式

spring-boot-starter-thymeleaf

使用Thymeleaf檢視構建MVC Web應用程式

spring-boot-starter-validation

使用Java Bean Validation和Hibernate Validator進行引數校驗

spring-boot-starter-web

使用Spring MVC構建Web(包括RESTful)應用程式。使用Tomcat作為預設嵌入式容器

spring-boot-starter-web-services

使用Spring Web Services

spring-boot-starter-webflux

使用Spring Framework的Reactive Web支援構建WebFlux應用程式

spring-boot-starter-websocket

使用Spring Framework的WebSocket支援構建WebSocket應用程式

2.2  Spring Boot應用監控

名稱

描述

spring-boot-starter-actuator

使用Spring Boot的Actuator的啟動器,它提供生產就緒功能,幫助您監控和管理您的應用程式

2.3  Spring Boot服務容器或日誌替換

名稱

描述

spring-boot-starter-jetty

spring-boot-starter-log4j2

spring-boot-starter-logging

使用Logback進行日誌記錄。預設日誌啟動器

spring-boot-starter-reactor-netty

使用Reactor Netty作為嵌入式響應式HTTP伺服器。

spring-boot-starter-tomcat

使用Tomcat作為嵌入式servlet容器。使用的預設servlet容器啟動器spring-boot-starter-web

spring-boot-starter-undertow