Spring Framework 5.0 Release Candidate Available

The third release candidate (RC3) of the Spring Framework 5.0 is now available, Pivotal Software Inc. announced this week. This release is a major revision of the core framework, the most comprehensive update since version 4.3.

Spring 5.0 was actually feature-complete in May, but the project managers opted for an extended release candidate phase.

"This [extended release phase] allows for further hardening of our revised APIs, and in particular for a proper upgrade to Reactor 3.1 GA, JUnit 5.0 GA and Jackson 2.9 GA (all expected by early September)," explained project co-founder and release manager Juergen Hoeller in a blog post. "As a consequence, we are aiming for our Spring Framework 5.0 GA release in September now, close to JDK 9's general availability target."

Among other enhancements, the new version of the popular Java enterprise application framework introduces comprehensive support for reactive programming via a new functional Web framework, an option next to the existing annotation-driven programming model. Spring WebFlux is built on version 3.1 of Reactor (a non-blocking reactive foundation for the JVM) and includes support for versions 1.3 and 2.1 of RxJava (a library for composing asynchronous and event-based programs using observable sequences for the Java VM, also known as Reactive Extensions for the JVM), and running on Apache Tomcat, Eclipse Jetty, Netty or JBoss Undertow.

It also comes with refined nullability declarations (including the field and bean property level) and stronger Kotlin support (with a declarative bean definition DSL and support for default constructor arguments on Kotlin data classes).

The 5.0 release also is fully tested against the recent JDK 9 release candidate, Hoeller said.

The list of major Spring Framework 5 "feature themes" also includes, among others:

  • Functional style with Java 8 and Kotlin: several API refinements and Kotlin extensions across the framework, in particular for bean registration and functional Web endpoints.
  • Integration with Java EE 8 APIs: support for Servlet 4.0, Bean Validation 2.0, JPA 2.2, as well as the JSON Binding API (as an alternative to Jackson/Gson in Spring MVC).
  • Ready for JDK 9: fully aligned with JDK 9 at runtime, on the classpath as well as the module path (on the latter: as filename-based "automatic modules" for the time being).

About the Author

John K. Waters is the editor in chief of a number of sites, with a focus on high-end development, AI and future tech. He's been writing about cutting-edge technologies and culture of Silicon Valley for more than two decades, and he's written more than a dozen books. He also co-scripted the documentary film Silicon Valley: A 100 Year Renaissance, which aired on PBS.  He can be reached at [email protected].