The Spring Blog

Engineering
Releases
News and Events

Spring Data Moore M2 released

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

Notable changes include:

  • Support for Kotlin Coroutines in Spring Data MongoDB, Cassandra and Redis.
  • Querydsl support for reactive repositories.
  • Range type support for derived repository query methods using between for Spring Data MongoDB & Cassandra.
  • exists projection in Neo4j repositories.
  • Reactive repositories for Spring Data Elasticsearch.
  • Pivotal Gemfire and Apache Geode upgrades.
  • Upgrade to Spring HATEOAS 1.0 M1.
  • …and numerous features for the JDBC module like direct insert & update methods skipping the is new check.
Read more...

Has there ever been a better time to become a Java developer?

Surely there’s never been a better time to become a Java developer?

There are productivity tools available these days that would have been mind-blowing just five years ago.

Take Spring Boot for example. Many people reading this on the Spring website may be familiar with Spring Boot. But let’s take a moment to acknowledge its awesomeness.

Years ago, if you were going to use the Spring Framework in your application, you had to be OK with a certain amount of configuration toil creeping into your day. But it wasn’t nice friendly configuration like, (ah, actually, sorry, I can’t think of an example of ‘friendly configuration’), it was nasty XML configuration with a side order of XSD, eww!

Read more...

Spring Cloud Data Flow and Skipper 2.0 GA Released

The Spring Cloud Data Flow team is pleased to announce the release of 2.0 of Data Flow. Follow the Getting Started guides for running on Local, Cloud Foundry, and Kubernetes.

Hand in hand is the 2.0 release of Spring Cloud Skipper. The getting started section in the reference guide is the best place to start if you want to use Skipper separately from Data Flow.

Here are the highlights for Data Flow

  • Stream deployment always delegates to Skipper

  • Single server that runs on all supported platforms

  • Launch tasks against multiple platforms

  • UI improvements

  • Standardize on OAuth2 and OpenID Connect for Security

  • Revamped metrics and monitoring of deployed applications

  • Updated analytics using micrometer

  • Database migration support

  • Update to Boot 2.1

  • Update internals to use JPA

  • Task/Job Execution and Performance improvements

Read more...

Flight of the Flux 1 - Assembly vs Subscription

This blog post is the first in a series of posts that aim at providing a deeper look into Reactor’s more advanced concepts and inner workings.

It is derived from my Flight of the Flux talk, which content I found to be more adapted to a blog post format.

I’ll update the table below with links when the other posts are published, but here is the planned content:

  1. Assembly vs Subscription (this post)
  2. Debugging caveats
  3. Concurrent Agnostic
  4. Schedulers and publishOn vs subscribeOn
  5. Inner workings: work stealing
  6. Inner workings: operator fusion
Read more...

This Week in Spring - March 5th, 2019

Hi Spring fans! Welcome to another installment of This Week in Spring! I flew 14 hours to Tel Aviv, Israel. I then spent 28h on the ground visiting customers, visiting my friends at Codota, and then presenting at a packed house at the Israel Java User Group. Then I flew another 14 hours back to San Francisco, CA where I presented for a four-hour online course on using Kotlin with Spring Boot. Tonight I’ll fly to Atlanta, GA for the incredible DevNexus conference where I’ll be presenting (twice) with the good Dr. Venkat Subramaniam on Kotlin (and Spring) and more. Tomorrow, I’m doing a four hour course on testing. Join me!

Read more...

Spring HATEOAS 1.0 M1 released

Dear Spring community, we’re proud to announce the first milestone of Spring HATEOAS 1.0. Spring HATEOAS has been in development for almost seven years now. What started as tiny extension to Spring MVC became the foundation for Spring Data REST later on and has served as a fundamental building block for hypermedia based APIs in Spring MVC applications.

We received a lot of input for more advanced features from the community and eventually decided that it was time to integrate those into the library. Also, we gained a significant amount of experience using the library in the wild and thought we should take the chance to reflect those learnings in a 1.0 release.

Read more...

Spring Initializr: new UI

On behalf of the team and everyone who has contributed, I’m happy to announce that Spring Initializr has been updated and is now available on start.spring.io.

A short history of Spring Initializr

The project started out as a minimal HTML form, letting you generate a Spring Boot application with a few options. It’s been well received by the Spring community, so the team added new ways to interact with it, through the command-line or your favorite IDE.

After a while, we decided to work on a first revision of the UI. We simplified the form, leaving the essential parts front and center and pushing others in a section hidden by default. Given the number of dependencies, we created a search box to look for available starters.

Read more...

java-cfenv 1.0 GA Released

The java-cfenv library is a new library for accessing Cloud Foundry Services. For Spring Boot users, it extracts service credentials from the VCAP_SERVICES environment variable and sets well known Spring Boot auto-configuration properties.

You can find more about it in the 1.0 M1 release blog as well as the README.

In this release the following Cloud Foundry Services are supported

  • Databases - DB2, MySQL, Oracle, Postgresql, SqlServer

  • RabbitMQ

  • Cassandra

  • MongoDB

  • Redis

  • Pivotal Single Sign On

Of note, there is a new interface, CfEnvProcessor that simplifies what you need to write in order to provide integration with other Cloud Foundry services. The docs on supporting other services has the details.

Read more...

java-cfenv 1.0 RC1 Released

The java-cfenv library is new library for accessing Cloud Foundry Services. For Spring Boot users, it extracts service credentials from the VCAP_SERVICES environment variable and sets well known Spring Boot auto-configuration properties.

In this release the following Cloud Foundry Services are supported

  • Databases - DB2, MySQL, Oracle, Postgresql, SqlServer

  • RabbitMQ

  • Cassandara

  • MongoDB

  • Redis

In 1.0 RC1 two other modules were introduced that contain support for Pivotal’s Spring Cloud Service and Single Sign on tiles. The java-cfenv-boot-pivotal-scs module provides support for Config Server and java-cfenv-boot-pivotal-sso module provides support for single sign on.

Read more...