Spring Boot Concepts

From NovaOrdis Knowledge Base
Jump to navigation Jump to search

Internal

Spring Project Structure

Spring Initializr Project Structure

Autoconfiguration

Also see Spring Framework's configuration model.

@SpringBootApplication

@EnableAutoConfiguration

Developer Tools

Additional set of tools that come as part of Spring Boot, and which can make, according to the documentation, "development experience a little more pleasant". The artifacts are identified as org.springframework.boot:spring-boot-devtools. They include the following development-time features:

  • ?
  • ?
  • ?

Development tools are disabled when running as a fully packaged application (such as with java -jar). They should be declared optional in Maven or "compileOnly" in Gradle.

Configuration Processor

TO process: https://docs.spring.io/spring-boot/docs/2.0.5.RELEASE/reference/htmlsingle/#configuration-metadata-annotation-processor.

Caching

Spring Boot automatically configures a suitable cache manager to serve as provider for the relevant cache.

TODO: https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-caching.html. Also see Spring Framework Cache Abstraction.

Spring Boot Starter Dependency

What is a SpringBoot starter?


'spring-boot-starter' is included in all other starters.

How do I see what's in a starter?

IntelliJ Support

IntelliJ IDEA Plugin for Spring Boot

Testing

Process: https://spring.io/blog/2016/04/15/testing-improvements-in-spring-boot-1-4

Testing Logging Configuration

By default, test logging is executed by Logback.