The Spring Blog

Engineering
Releases
News and Events

SpringOne Platform 2016 Replay: Where Does Apache Geode Fit in CQRS Architectures?

Recorded at SpringOne Platform 2016.
Speaker: Eitan Suez
Slides: http://www.slideshare.net/SpringCentral/where-does-apache-geode-fit-in-cqrs-architectures

In this talk, Eitan Suez will explore the question: Where does Geode fit in an organization’s system architecture? Geode is a unique and feature-rich product that perhaps hasn’t seen as much adoption as it deserves. Today’s apps are no longer the straightforward, database-backed web applications we used to build a few years ago. Applications have become more sophisticated, as they’ve had to meet the need to scale, to be reliable, fault-tolerant, and to integrate with other systems. In this talk, Eitan will suggest one particular fit for Geode in the context of a CQRS architecture, and welcomes you to attend, and to contribute by sharing how you’ve put Geode to use in your organization.

Read more...

SpringOne Platform 2016 Replay: Next Level Redis with Spring

Recorded at SpringOne Platform 2016.
Speaker: Christoph Strobl
Slides: http://www.slideshare.net/SpringCentral/next-level-redis-with-spring

Redis is one of the most popular Open Source Key Value Stores these days. Spring Data Redis Lead Christoph Strobl takes you on a tour through high availability and cluster scenarios. He explains Object Hash Mapping and Secondary Indexes as well as the Spring Data Repository abstraction that let’s you seamlessly interact with Redis.

Read more...

SpringOne Platform 2016 Replay: Java Buildpack Developer Enhancements

Recorded at SpringOne Platform 2016.
Speaker: Ben Hale
Slides: http://www.slideshare.net/Pivotal/java-buildpack-developer-enhancements

Over the years, the Java Experience team has worked hard to ensure that Cloud Foundry was the best place to run Java applications in the cloud. As that support has matured we’ve turned our attention to the developer experience. In this session, you’ll hear from the lead developer of the buildpack about the new support for JMX access, debugging, and profiling. Rounding out this session will be a short tour of other production features added recently.

Read more...

SpringOne Platform 2016 Replay: Spinnaker - Land of a 1000 Builds

Recorded at SpringOne Platform 2016.
Speaker: Greg Turnquist
Slides: http://www.slideshare.net/SpringCentral/spinnaker-land-of-a-1000-builds

How do big shops like Netflix make it possible to deploy hundreds if not thousands of releases every single day? FInd out with a tour through the microservice, Spring Boot-based system known as Spinnaker. Spinnaker is the open source continuous deployment tool that supports multiple clouds, multiple languages, and multiple providers. See how to keep your arms around complex deployment processes, multiple targets, and diverse teams.

Read more...

SpringOne Platform 2016 Replay: Writing your own Spring Boot Starter

Recorded at SpringOne Platform 2016.
Speaker: Dieter Hubau
Slides: http://www.slideshare.net/SpringCentral/writing-your-own-spring-boot-starter

Anyone who is actively using Spring must have heard of Spring Boot by now. It is the current de facto standard tool to start with a new Spring project and will become even more prevalent over the coming years. Next to an easy to use interface at start.spring.io and very good documentation, there are a ton of so called Spring Boot Starters which a developer can use to jumpstart their development. While the auto-configuration and starters often seem to be magically endowed creatures originating from the deepest regions of the forest moon of Endor… there are not. In fact, anyone can write his or her own Spring Boot Starter. During the presentation, I will explain the inner workings of a Spring Boot Starter project and go over the necessary code for creating our own. I will use my recently developed starter for integrating Spring Social with a Redis backed datastore. At the end of the session, the audience will know that the Spring Boot autoconfiguration and starter projects are not magical unicorns, but easy to understand components in the Spring Boot ecosystem. They will also learn how to create their own Spring Boot Starter project and hopefully, they will be inclined to become proactively involved in the Spring Boot project.

Read more...

Spring Framework 5.0 M4 released

Dear Spring community,

It is my pleasure to announce that the fourth Spring Framework 5.0 milestone is available now, right in time to wrap up 2016! Once again, please check the project page for how to obtain it from our milestone repository and the updated “Reactive Web Applications” documentation.

This milestone brings our reactive efforts close to completion and introduces a functional bean registration facility as well as comprehensive support for the Kotlin language. Stay tuned for a dedicated blog post on Kotlin…

Read more...

Spring Tips: Spring Tips 2016

Hi Spring fans! I’m taking some time off for the holiday so there won’t be a new Spring Tips until after the new year. If you’re itching for something to watch and learn, here are some resources to tide you over.

Happy new year!

Read more...

Spring AMQP 1.7 RC1 available now

On behalf of the Spring Integration team I’d like to announce the first (and final) Release Candidate of Spring AMQP 1.7, which is available in the Milestone Repository.

This release is mainly an intermediate between version 1.6.x and 2.0 for Spring Boot 1.5 and IO Platform Brussels compatibility.

Anyway there are several improvements and new features to explain here:

  • Upgrade to Amqp Client 4.0 with appropriate RabbitConnectionFactoryBean changes

  • Upgrade to Log4j 2.7 and required braking change fix for the log4j2.AmqpAppender

  • Upgrade to Spring Retry 1.2 with important StatefulRetryOperationsInterceptor.setUseRawKey(true) for backward compatibility

  • a new spring-rabbit-junit artifact is provided with several utilities (like BrokerRunning @Rule) which can be useful for testing Spring AMQP applications

  • The SimpleMessageListenerContainer can now be started without queues to listen to at all. They can be provided later at runtime via addQueues()

  • a ConnectionNameStrategy is provided for the ConnectionFactory to allow to identify application connections in the Broker or other monitoring and tracing tools

Read more...

This Year in Spring - 2016 edition

Welcome to a very special This Week in Spring! Every year we wrap up with a recap of highlights from the year. This year’s no different! It’s been a heckuva year, and the Pivotal Spring and Cloud Foundry teams seem to deliver bigger and better tech every passing day. If you’ve been following This Week in Spring then you’ll no doubt be aware of the changes! It’s hard to keep up, even for me, with the dizzying pace of releases!

So, here are the top five things I’d encourage people to review from 2016:

Read more...

Spring Data Release Train Ingalls RC1 Released

On behalf of the Spring Data team I’d like to announce the first (and final) release candidate of Spring Data train Ingalls. The release ships over 310 issues fixed (some of them previously released with Hopper service releases). The most important new features are:

  • Upgrade to Spring 4.3(.5) as baseline - #294.
  • Support to easily expose domain events as Spring application events from aggregate roots - DATACMNS-928.
  • Support for exists projection from derived query methods - DATACMNS-875.
  • Support for Javaslang’s Option, collection and map types on repository query methods - DATACMNS-937, DATACMNS-940.
  • Added Spring Data LDAP module taking over the repository implementation of Spring LDAP.
  • Support for MongoDB aggregation operators added in latest releases - DATAMONGO-1536.
  • Stream execution now rejects invocation without surrounding transaction in JPA - DATAJPA-1023.
  • Support for annotation based indexing and expirations in Gemfire - SGF-106, SGF-516.
  • Support for CORS configuration in Spring Data REST - DATAREST-573.
Read more...