The Spring Blog

Engineering
Releases
News and Events

Spring Data R2DBC 1.0 M1 released

It’s my pleasure to announce the first milestone of Spring Data R2DBC. Spring Data R2DBC is Spring’s client project for R2DBC. With Spring Data R2DBC you get end to end reactive ad-hoc query execution and Spring Data repositories for relational databases.

Spring Data R2DBC embraces functional-reactive integration of relational databases by providing DatabaseClient as its central abstraction. The following example shows how to bootstrap DatabaseClient without spinning up a Spring context:

PostgresqlConnectionFactory connFactory = new PostgresqlConnectionFactory(
  PostgresqlConnectionConfiguration.builder()
    .host(…)
    .database(…)
    .username(…)
    .password(…)
    .build());

DatabaseClient databaseClient = DatabaseClient.create(connFactory);
Read more...

How Fast is Spring?

Performance has always been one of the top priorities of the Spring Engineering team, and we are continually monitoring and responding to changes and to feedback. Some fairly intense and precise work has been done recently (in the last 2-3 years) and this article is here to help you to find the results of that work and to learn how to measure and improve performance in your own applications. The headline is that Spring Boot 2.1 and Spring 5.1 have some quite nice optimizations for startup time and heap usage. Here’s a graph made by measuring startup time for heap constrained apps:

Read more...

This Week in Spring - December 11, 2018

Hi Spring fans and welcome to another installment of This Week in Spring! This week I’ve been in Seattle, WA and now I’m off to Toronto, Canada for the epic SpringOne Tour Toronto edition, the last SpringOne Tour for the year, too! (Can you believe we’re now less than 22 days from 2019? Time sure flies when you’re having fun!)

Read more...

Spring Data Moore M1 released

On behalf of the Spring Data team, I’m pleased to announce the availability of the first milestone of the Moore release train.

Notable changes include:

Read more...

Spring REST Docs 2.0.3.RELEASE

It’s my pleasure to announce that Spring REST Docs 2.0.3.RELEASE is available from Maven Central, JCenter, and our release repository. My thanks to everyone who contributed to this release by reporting bugs and opening pull requests.

This maintenance release includes a small number of fixes and documentation improvements. It is a recommend upgrade for all Spring REST Docs 2.x users.

GitHub | Issues | Documentation | Twitter | Gitter | Stack Overflow

Read more...

Spring REST Docs 1.2.6.RELEASE

It’s my pleasure to announce that Spring REST Docs 1.2.6.RELEASE is available from Maven Central, JCenter, and our release repository. My thanks to everyone who contributed to this release by reporting bugs and opening pull requests.

This maintenance release includes a handful of bug fixes and documentation improvements. It is a recommend upgrade for all Spring REST Docs 1.x users.

GitHub | Issues | Documentation | Twitter | Gitter | Stack Overflow

Read more...

Reactive Programming and Relational Databases

Imperative code eats threads at the pace of incoming requests while Software is eating the world. This post discusses the assumptions for reactive programming on the JVM and what this means for integrations – in particular, relational databases.

The motivation to come up with a post is the constant increase in reactive programming adoption while some major building blocks are not yet available – in particular, the question: What about relational databases?

What is Reactive Programming

There are a lot of answers about what Reactive Programming is and how this compares to Reactive Systems. I see Reactive Programming as a programming model that facilitates scalability and stability by creating event-driven non-blocking functional pipelines that react to availability and processability of resources. Deferred execution, concurrency and asynchronicity are only a consequence of the underlying programming model.

Read more...

Spring IO Platform Cairo-SR6

I am pleased to announce that Spring IO Platform Cairo-SR6 is now available from both repo.spring.io and Maven Central.

This maintenance release upgrades the versions of a number of the projects in the Platform:

  • Reactor Bismuth-SR14
  • Spring AMQP 2.0.10
  • Spring Boot 2.0.7
  • Spring Cloud Connectors 2.0.4
  • Spring Data Kay-SR12
  • Spring Framework 5.0.11
  • Spring Integration 5.0.10
  • Spring Kafka 2.1.11
  • Spring Security 5.0.10
  • Spring Session Apple-SR7

The versions of a number of third-party dependencies have also been updated.

Read more...

Spring Tools 4.0.2 released

Dear Spring Community,

I am happy to announce the 4.0.2 release of the Spring Tools 4 for Eclipse, Visual Studio Code, and Atom.

Highlights from this release include:

  • (Spring Boot) CTRL-CLICK navigation from application.properties and application.yml to Java
  • (Spring Boot) Improvements to ‘Goto Symbol’ and ‘Live Hover’ for functional style WebFlux request mappings
  • (Spring Boot) Support for Spring Boot log groups in properties and yaml editor
  • (Spring Boot) Various bug fixes
  • (Eclipse) Boot launch config editor ‘override properties’ now uses full-featured embedded properties editor
Read more...