Spring Boot 1.0: convention over configuration for the Java world

Spring Boot 1.0 (April 2014) by Pivotal (Phil Webb, Dave Syer): standalone Java application with embedded server, auto-configuration, starter dependencies, production-ready metrics. Radical renewal of the Spring stack.

Open SourceWeb Spring BootSpringJavaPivotalOpen SourceWebBackend

The weight of classic Spring

Spring Framework (2003) is the most widespread Java enterprise framework. Offers IoC/DI, AOP, transactions, MVC. But verbose XML configuration, deployment on heavy application servers (Tomcat, JBoss, WebLogic), large projects with hundreds of beans require complex configuration. Massive boilerplate.

The release

Spring Boot 1.0 is published by Pivotal (now VMware Tanzu) on 1 April 2014. Lead developers: Phil Webb, Dave Syer. Mission: make Spring “production-ready” in minutes, not weeks. Apache 2.0 licence.

@SpringBootApplication
@RestController
public class DemoApplication {
    @GetMapping("/")
    String home() { return "Hello, World"; }
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

Features

  • Auto-configuration — beans automatically created based on classpath
  • Embedded server — Tomcat/Jetty/Undertow included in JAR, java -jar app.jar
  • Startersspring-boot-starter-web, -data-jpa, -security dependency bundles
  • Opinionated defaults — reasonable configuration without XML
  • Actuator — endpoints for health, metrics, info, env, beans, mappings
  • Externalised config — properties/YAML, profiles (dev/prod)
  • DevTools — dev hot reload

Spring ecosystem

With Spring Boot the Spring ecosystem explodes:

  • Spring Data — JPA, MongoDB, Redis, Elasticsearch, Cassandra
  • Spring Security — auth, OAuth2, JWT, method security
  • Spring Cloud — microservices (Config, Gateway, Eureka service discovery)
  • Spring Batch — batch jobs
  • Spring Integration — enterprise integration patterns
  • Spring WebFlux — reactive programming

Competitors

  • Dropwizard — minimal
  • Play Framework (Scala/Java)

In the Italian context

Spring Boot is positioning itself as the natural candidate for the Italian Java enterprise backend stack: banks, insurance, telco and digital PA already have significant Spring Framework investment and can adopt Spring Boot without architectural upheaval.


References: Spring Boot 1.0 (1 April 2014). Pivotal (now VMware Tanzu). Phil Webb, Dave Syer. Apache 2.0 licence. Auto-configuration, embedded server, starters.

Need support? Under attack? Service Status
Need support? Under attack? Service Status