项目搭建页面
https://start.spring.io/
各个依赖的作用
List of dependencies for Spring Boot 2.1.5.RELEASE
Core
- DevTools: Spring Boot Development Tools
- Lombok: Java annotation library which helps to reduce boilerplate code and code faster
- Configuration Processor: Generate metadata for your custom configuration keys
- Session: API and implementations for managing a user’s session information
- Cache: Spring's Cache abstraction
- Validation: JSR-303 validation infrastructure (already included with web)
- Retry: Provide declarative retry support via spring-retry
- Aspects: Create your own Aspects using Spring AOP and AspectJ
Web
- Web: Servlet web application with Spring MVC and Tomcat
- Reactive Web: Reactive web applications with Spring WebFlux and Netty
- Rest Repositories: Exposing Spring Data repositories over REST via Spring Data REST
- Rest Repositories HAL Browser: Browsing Spring Data REST repositories in your browser
- HATEOAS: HATEOAS-based RESTful services
- Web Services: Contract-first SOAP services with Spring Web Services
- Jersey: RESTful Web Services with JAX-RS
- REST Docs: Document RESTful services by combining hand-written and auto-generated documentation
- Vaadin: Vaadin java web application framework
- Apache CXF: RESTful Web Services with JAX-RSRequires Spring Boot >=1.5.0.RELEASE and <2.1.0.M1.
- Ratpack: Spring Boot integration for the Ratpack frameworkRequires Spring Boot >=1.5.0.RELEASE and <2.0.0.M1.
- Mobile: Simplify the development of mobile web applications with Spring MobileRequires Spring Boot >=1.5.0.RELEASE and <2.0.0.M1.
Template Engines
- Thymeleaf: Thymeleaf templating engine
- Freemarker: FreeMarker templating engine
- Mustache: Mustache templating engine
- Groovy Templates: Groovy templating engine
Security
- Security: Secure your application via spring-security
- OAuth2 Client: Spring Boot integration for Spring Security's OAuth2/OpenID Connect client features
- OAuth2 Resource Server: Spring Boot integration for Spring Security's OAuth2 resource server features
- Okta: Okta specific configuration for Spring Security/Spring Boot OAuth2 features
SQL
- JPA: Persist data in SQL stores with Java Persistence API using Spring Data and Hibernate
- MySQL: MySQL JDBC driver
- H2: H2 database (with embedded support)
- JDBC: Persistence support using JDBC
- MyBatis: Persistence support using MyBatis
- PostgreSQL: PostgreSQL JDBC driver
- SQL Server: Microsoft SQL Server JDBC driver
- HSQLDB: HSQLDB database (with embedded support)
- Apache Derby: Apache Derby database (with embedded support)
- Liquibase: Liquibase Database Migrations library
- Flyway: Flyway Database Migrations library
- JOOQ: Persistence support using Java Object Oriented Querying
NoSQL
- Redis: Access Redis key-value data stores with Spring Data Redis
- Reactive Redis: Access Redis key-value data stores in a reactive fashion with Spring Data Redis
- MongoDB: Access MongoDB NoSQL Database with Spring Data MongoDB
- Reactive MongoDB: Access MongoDB NoSQL Database in a reactive fashion with Spring Data MongoDB
- Embedded MongoDB: Embedded MongoDB for testing
- Elasticsearch: Elasticsearch search and analytics engine with Spring Data Elasticsearch
- Solr: Access Apache Solr search platform with Spring Data Solr
- Cassandra: Access Cassandra NoSQL Database with Spring Data Cassandra
- Reactive Cassandra: Access Cassandra NoSQL Database in a reactive fashion with Spring Data Cassandra
- Couchbase: Access Couchbase NoSQL database with Spring Data Couchbase
- Reactive Couchbase: Access Couchbase NoSQL database in a reactive fashion with Spring Data Couchbase
- Neo4j: Access Neo4j NoSQL graph database with Spring Data Neo4j
- Gemfire: Access GemFire distributed data store with Spring Data GemfireRequires Spring Boot >=1.5.0.RELEASE and <2.0.0.M1.
Messaging
- Spring Integration: Common spring-integration modules
- RabbitMQ: Advanced Message Queuing Protocol via Spring Rabbit
- Kafka: Kafka messaging support using Spring Kafka
- Kafka Streams: Building stream processing applications with Apache Kafka Streams
- JMS (ActiveMQ): Java Message Service API via Apache ActiveMQ
- JMS (Artemis): Java Message Service API via Apache Artemis
- WebSocket: WebSocket applications with SockJS and STOMP
- RSocket: RSocket.io applications with Spring Messaging and NettyRequires Spring Boot >=2.2.0.M2.
Cloud Core
- Cloud Bootstrap: spring-cloud-context (e.g. Bootstrap context and @RefreshScope)
- Cloud Function: Functions as Spring Beans
- Cloud Security: Secure load balancing and routing with spring-cloud-security
- Cloud OAuth2: OAuth2 and distributed application patterns with spring-cloud-security
- Cloud Task: Task result tracking with Spring Batch and Spring Cloud Stream integrations
Cloud Support
- Cloud Connectors: Simplifies connecting to services in cloud platforms, including spring-cloud-connector and spring-cloud-cloudfoundry-connector
- Open Service Broker: Create service brokers that conform to the Open Service Broker API specification
Cloud Config
- Config Client: Spring Cloud Config Client
- Config Server: Central management for configuration via a git or svn backend
- Vault Configuration: Configuration management with HashiCorp Vault
- Zookeeper Configuration: Configuration management with Zookeeper and spring-cloud-zookeeper-config
- Consul Configuration: Configuration management with Hashicorp Consul
Cloud Discovery
- Eureka Discovery: Service discovery using spring-cloud-netflix and Eureka
- Eureka Server: spring-cloud-netflix Eureka Server
- Zookeeper Discovery: Service discovery with Zookeeper and spring-cloud-zookeeper-discovery
- Cloud Foundry Discovery: Service discovery with Cloud Foundry
- Consul Discovery: Service discovery with Hashicorp Consul
Cloud Routing
- Zuul: Intelligent and programmable routing with spring-cloud-netflix Zuul
- Gateway: Intelligent and programmable routing with the reactive Spring Cloud Gateway
- Ribbon: Client side load balancing with spring-cloud-netflix and Ribbon
- Feign: Declarative REST clients with spring-cloud-netflix Feign
Cloud Circuit Breaker
- Hystrix: Circuit breaker with spring-cloud-netflix Hystrix
- Hystrix Dashboard: Circuit breaker dashboard with spring-cloud-netflix Hystrix
- Turbine: Circuit breaker metric aggregation using spring-cloud-netflix with Turbine and server-sent events
- Turbine Stream: Circuit breaker metric aggregation using spring-cloud-netflix with Turbine and Spring Cloud Stream (requires a binder, e.g. Kafka or RabbitMQ)
Cloud Tracing
- Sleuth: Distributed tracing via logs with spring-cloud-sleuth
- Zipkin Client: Distributed tracing with an existing Zipkin installation and spring-cloud-sleuth-zipkin. Alternatively, consider Sleuth Stream.
Cloud Messaging
- Cloud Bus: A simple control bus using Spring Cloud Stream (requires a binder, e.g. Kafka or RabbitMQ)
- Cloud Stream: Messaging microservices with Spring Cloud Stream (requires a binder, e.g. Kafka or RabbitMQ)
- Reactive Cloud Stream: Reactive messaging microservices with Spring Cloud Stream (requires a binder, e.g. Kafka or RabbitMQ)
Cloud Contract
- Cloud Contract Verifier: Test dependencies required for autogenerated tests
- Cloud Contract Stub Runner: Stub Runner for HTTP/Messaging based communication. Allows creating WireMock stubs from RestDocs tests
Pivotal Cloud Foundry
- Config Client (PCF): Config client on Pivotal Cloud Foundry
- Service Registry Client (PCF): Eureka service discovery client on Pivotal Cloud Foundry
- Circuit Breaker Client (PCF): Hystrix circuit breaker client on Pivotal Cloud Foundry
Amazon Web Services
- AWS Core: AWS native services from spring-cloud-aws
- AWS JDBC: Relational databases on AWS with RDS and spring-cloud-aws-jdbc
- AWS Messaging: Messaging on AWS with SQS and spring-cloud-aws-messaging
Azure
- Azure Support: Auto-configuration for Azure Services (service bus, storage, active directory, cosmos DB, key vault and more)
- Azure Active Directory: Spring Security integration with Azure Active Directory for authentication
- Azure Key Vault: Spring value annotation integration with Azure Key Vault Secrets
- Azure Storage: Azure Storage service integration
Google Cloud Platform
- GCP Support: Support for Google Cloud Platform services
- GCP Messaging: Publish to and subcribe from Google Cloud Pub/Sub topics
- GCP Storage: Access Google Cloud Storage objects
I/O
- Batch: Spring Batch support
- Mail: Send email using Java Mail and Spring Framework's JavaMailSender
- Apache Camel: Integration using Apache Camel
- LDAP: LDAP support, including spring-data-ldap
- Quartz Scheduler: Schedule jobs using Quartz
- Spring Shell: Build shell-based clients
- Statemachine: Build applications using state machine concepts
Ops
- Actuator: Production ready features to help you monitor and manage your application
- Spring Boot Admin (Server): An admin interface for Spring Boot applications
- Spring Boot Admin (Client): Register your application with a Spring Boot Admin instance
- Actuator Docs: API documentation for the Actuator endpointsRequires Spring Boot >=1.5.0.RELEASE and <2.0.0.M1.