- Spring Security ninja Joe Grandja has just announced the new Spring Security OAuth 2.1.1 and 2.0.4
- Spring Cloud Data Flow engineer Gunnar Hillert just announced Spring Cloud Data Flow 1.2.1
- Spring Cloud co-founder Spencer Gibb just announced Spring Cloud Dalston SR1
- I liked Jonas Hecht’s post looking at how to run Spring Boot on Docker Windows
- I loved this post from RedHat engineer Sébastien Blanc on using Keycloak, their OAuth-aware identity provider, with Spring Boot applications. Keycloak is also supported on the Spring Initializr.
- The Docker blog also has a nice post by Sophia Parafina on running a Spring Boot application in a Docker container
- The Pivotal engineering blog has a nice post by Ian Fisher on the must-know Spring Boot annotations
- the IBM DeveloperWorks blog has a nice post on building Spring Boot applications
- I really liked this post by Aboullaite Mohammed on using the Spring Boot Actuator
- the MemoryNotFound blog has a nice post on using the
@ConfigurationPropertiesannotation in a Spring Boot application.
- Grygoriy Gonchar looks at the implications for doing reactive JDBC (even if it’s just a facade around fundamentally blocking APIs) with Spring 5’s Reactor support.
- The All and Sundry blog has a nice look at writing a ratio-aware proxy using Spring Cloud Netflix Zuul to ease the migration to a new service
The Spring Blog
Welcome to another installment of This Week in Spring! This week I’m in Amsterdam, NL and Essen, DE, talking to customers about cloud-native transformation. We’ve got a lot to cover so let’s get to it.
- Spring Tool Suite lead Martin Lippert just announced a preview of Concourse Pipeline and Cloud Foundry manifest editing support releases as a language server. These language servers can be used by any IDE or text editor that supports them, including in this case Microsoft’s Visual Studio Code and later STS itself.
- Spring Cloud Stream ninja Soby Chako just announced Spring Cloud Stream.SR2
- Simon Baslé just announced the Reactor Bismuth release train M1
- Stéphane Nicoll just announced Spring Boot 2.0M1! It’s finally here! Get the bits of the first major release towards a reactive Spring Boot 2.0. There’s so much good stuff, including an updated Gradle plugin, relaxed binding improvements, major dependency upgrades and so much more!
- I think this article by Paweł Chudzik on poor man’s batch solutions - iterating over large datasets - was very interesting. The conclusion is obvious: if you want to scroll through a large amount of records then use a
java.util.Stream<T>finder query in your Spring Data repository. That’s one obvious conclusion. May I also humbly recommend that you look at Spring Batch and have a rich man’s batch at poor man’s prices? :)
- Want easier handling form encoded JSON in Spring MVC? Vote for this issue!
- I liked this walk through on how to implement a forgot password flow with Spring Boot on the Code by Amir blog by Amir Boroumand.
- Amir Boroumand also has a nice walkthrough on creating a REST API with Spring Boot
- Our friends at JDriven are doing what appears to be an awesome (though I think Dutch-language) on MQTT and Spring Cloud Stream and Spring Cloud Data Flow
- I liked this fairly approachable look at how to deploy Hashicorp Vault to Cloud Foundry by our very own Toshiaki Maki.
- Want a bit of insight into what the future of Serverless looks for Spring? Check out the slides to the good Dr. Dave Syer’s presentation on Spring Cloud Function at Spring IO
- WeaveWorks’ Scope is now available and supports Cloud Foundry
- I liked this rant from Steve Yegge on why Kotlin is a nice language. Interesting reading!
Welcome to another installment of This Week in Spring! This week I am in Munich for the Spring Meetup; Berlin for OSDC; Krakow for Geecon; Barcelona for Spring I/O, and Eindhoven for NextBuild. If you’re around, say hi.
As usual, we’ve got a lot to cover so let’s get to it!
- Dr. Mark Pollack just announced Spring Cloud Data Flow 1.2GA!, including the server editions for local, Kubernetes, YARN and Cloud Foundry. This new release is packed with good stuff. I particularly like the support for composed tasks, which lets me orchestrate a flow of tasks as a cohesive unit-of-work. This is ideal for complex ETL pipelines. It even includes support for sequential, parallel, and conditional sequence transitions. And, of course, all of this can be mixed-and-matched. Previously, to get this kind of power, you had to manually wire up remote partitioning in a Spring Batch job. Or setup some very complicated Spring Integration flow. And neither would’ve given me everything this does. It also includes support for better runtime visibility into what is happening, OAuth support, role-based access, and much more. This is a very cool release! Get the bits and try it out now!
- Spring Boot 2.0M1 has just been released!
- Spring Batch 4 keeps chugging along! The new milestone includes updates to the Java configuration API (new builders!) and dependdency updates.
- Spring REST Docs lead Andy Wilkinson has just published a maintenance release
- Spring Security lead Rob Winch just announced the first Milestone of the new 5.0 line. The new release includes OAuth 2.0 and OpenID connect 1.0 support as well as reactive integration!
- never one to rest, Rob also announced Spring Session 2.0 M1 which integrates with Spring Framework 5.
- there are exciting changes a brewin’ in the new Pivotal Spring education. Paul Chapman has the details here
- Spring Data ninja Mark Paluch just announced Spring Data Kay M3. This release includes a raft of updates to the various data stores and improved support for reactive tailable cursors in MongoDB, among other things.
- check out this example on how to introduce Zipkin into a traditional XML Spring app
- Cereebro, a fine microservice dashboard that works with Spring Cloud, has just reached 1.0
- BOSH, which lets you deploy and manage services, has just gotten considerably simpler!
- check out this handy Reactive Thymeleaf example
- I liked this presentation which introduces consumer driven contract testing
- Alex Soto is back with a second installment on how to test Spring Boot applications using Arquillian
- This Tensorflow integration for Spring Cloud Data Flow looks awesome
- Not strictly Spring specific, but I liked this resource on how and where to apply Kotlin on the server side
It’s my pleasure to announce that Spring REST Docs 1.2.1.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 users.
It has been almost 10 years now since I taught my first Core Spring class. At that time almost everything was XML and configuring JPA or Spring Security, for example, could be a lot of hard work. Spring has matured a great deal in the meantime with component-scanning, Java Configuration and Spring Boot making it much more fun to use. And the number of Spring Projects has increased considerably.
Pivotal Training continues to enhance our Spring curriculum and introduce new courses - including Spring Boot Developer and Spring Cloud Services. I have provided an overview of these courses and some of the newest features below. Most importantly, how you obtain Certification has changed.
- Spring Framework 5 RC1 is now available!
- InfoQ has a nice post on the new Spring Vault release
- Spring Integration lead Gary Russell just announced Spring AMQP 2.0M4 is now available
- Spring Cloud ninja Ryan Baxter just announced Spring Cloud Camden SR7 has been released
- I liked this short-but-sweet look at the Pivotal Cloud Cache on Pivotal Cloud Foundry, in terms of a Spring Boot application
- Periodic reminder: Spring Cloud Contract helps you solve the problem of integration testing distributed systems- don’t sleep on this!
- Spring ninja Stéphane Nicoll announced that there is now a starter for Reactive Redis support on the Spring Initializr
- I really enjoyed this discussion of the benefits of self-contained services (as compared to microservices) on InfoQ
- Kamala Dasika has put together a nice look going upstack when applying the 3 Rs of security
- the new Spring Cloud Data Flow page has a very convenient getting-started experience
- Praneeth Ramesh did a nice job introducing Cloud Foundry for developers
- I liked this post by Michael Simons digging into what makes a Spring Boot starter
Welcome to another installment of This Week in Spring! This week I’m in Perth, Australia, for the amazing YOW! West conference, talking to developers about building cloud native Java applications. If you’re around, say hi. As usual, we’ve got a lot to cover so let’s get to it!
I’m super excited about our first Spring Days event, on May 30-31, in Chicago. I’ll be there along with other Spring gurus like Eddu Melendez, Anupama Pradhan, and Michael Minella. I hope you’ll join us!
- Spring IO lead Any Wilkinson has announced Spring IO Platform Athens-SR5. He also announced Spring IO Platform Brussels-SR2
- Spring Session lead Rob Winch just announced Spring Session 1.3.1
- Spring Integration lead and all around great human Gary Russell just announced Spring for Apache Kafka 2.0M1
- Spring Cloud ninja Glenn Renfro just announced Spring Cloud Task 1.2.0
- I loved (in case you were unclear about the sentiment I have for this post!) this look at real time sentiment analysis with TensorFlow and Spring Cloud Data Flow
- the results of this months’ ZeroTurnaround web framework report are not too surprising: Spring MVC is in a distant lead, then JSF and GWT, then Spring Boot.
- this post, “Bootiful Development with Spring Boot and Angular,” on the Okta blog, is another gem by our buddy Matt Raible.
- Check out the ZT (short for ZeroTurnaround) Live replay for an epic look at Reactive Spring by Spring WebFlux engineer Sebastien Deleuze.
- Spring Cloud engineer Jon Schneider is cooking up some very cool stuff, and it might be an indication of future direction. Who knows!? But you should definitely check out his project, Spring Metrics
- My buddy Matt Raible and I looked at building progressive web applications with Spring Boot and Angular at our recent two-parter talks at Devoxx France 2017: part 1 and part 2. This was so much fun! Merci mille fois, Devoxx France! Thank you Devoxx France for letting us do these sessions!
- I did an interview with the amazing Software Engineering Daily Podcast on Spring Boot. It was a lot of fun being on there. I listen to the podcast regularly and really appreciate the opportunity!
- I liked this post by Alex Soto on using Arquillian to test Spring Data applications.
- this is an interesting post on discovering an microservices exposed port in a Docker container. Seems.. painful. I’m glad it’s so thoroughly documented and articulated here, though! Good stuff!
Welcome to another installment of This Week in Spring! This week I’m in beautiful Bangalore, India, at the 10th edition of the great, Great Indian Developer Summit! Then, I’m off to Perth, Australia, for YOW! West. If you’re around, say hi!. We’ve got a lot to cover, so let’s get to it!
- Spring REST Docs lead Andy Wilkinson just announced Spring REST Docs 1.2.0! This new release includes smarter Asciidoctor integration, support for request-and-response snippets, and better support for large and complex payloads. At the same time, Andy also released Spring REST Docs 1.1.3, a maintenance release
- Catch a replay of Spring WebFlux ninja Sebastien Deleuze’s epic Reactive Spring talk on ZTLive
- Spring Boot ninja Stéphane Nicoll just announced Spring Boot 1.5.3, a maintenance release, packed with lots of fixes and improvements. He also announced Spring Boot 1.4.6.
- Spring Cloud Data Flow lead and co-founder Dr. Mark Pollack just announced Spring Cloud Data Flow 1.2.RC1. This release is jam-packed with new features including support for composed tasks, real-time metrics and monitoring, OAuth improvements, a new (deliciously named) release of Spring Cloud Stream app starters Bacon.RELEASE, and a new release of Spring Cloud Task App Starters Belmont.RC1. Get the bits while you can! Kick the tires and feedback!
- Spring Cloud Pipelines lead and continuous delivery guru Marcin Grzejszczak just announced Spring Cloud Pipelines 1.0.0.M4. Spring Cloud Pipelines is a ready-made continuous delivery pipeline that you can use in Jenkins or Pivotal’s Concourse.
- Not one to rest on his laurels, Stéphane Nicoll also announced Spring Framework 4.3.8
- The Baeldung blog has a nice post on using the Spring AMAQP project’s service invoker support
- Spring Cloud Zipkin lead and OpenZipkin project contributor Adrian Cole put together a very nice talk on observability with logging, ,metrics, and tracing
- This connector makes it easy to connect RabbitMQ to Apache Kafka - looks interesting!
- Spring Cloud Contract lead Marcin Grzejszczak (remember him? He’s the lead of Spring Cloud Pipelines, too!) did a nice interview on InfoQ.
- Bozho did a nice blog looking at use-cases for Spring MVC in a Spring Boot application
- the Microsoft Azure service broker for Cloud Foundry is very interesting for a number of reasons: it lets you use Microsoft Azure backing services from Cloud Foundry (right on!) and it’s written in Spring Boot, so it serves as a very nice template
- Want to learn what’s happening in the Cloud Foundry ecosystem? I love this roundup from January to March 2017.
- the Auth0 blog has a nice post on using JWTs with Spring Boot
- Pierre Besson put together a very convenient JHipster generator that generates a custom Spring Boot
- Gerrit Meier put together a very cool look at using Spring WebFlux with the Thymleaf templating technology
- Subham Aggarwal put togeter a nice post on caching with Spring
Hi Spring fans! Welcome to another installment of This Week in Spring! This week I’m in Atlanta, GA, at DevOps Days Atlanta, and Boston for the Agile Tech Alliance conference. If you’re around for either I’d love to see you - say hi!
As usual, we’ve got a lot to cover so let’s get to it!
- The WebFlux functional reactive support in Spring Framework 5.0 is really catching on! I particularly enjoyed this post called Spring: Your Next Microframework
- Baeldung has a great post introducing WebFlux Functional Reactive Endpoints
- Jonathan Borenstein put together a simple demonstration looking at building functional REST services with Spring Framework 5.0
- Hurray! The Spring Cloud Dalston release is now GA! Get the bits and try it out! This release is packed with great new stuff!
- Spring Cloud Task ninja Glenn Renfro just announced Spring Cloud Task 1.2.0.RC1
- Spring Cloud Stream lead Marius Bogoevici just announced Spring Cloud Stream Chelsea GA
- Spring Data lead Oliver Gierke just announced Spring Data Kay M2 with lots of improvements and bugfixes! Get it while it’s hot!
- last week I concluded season 2 of the Spring Tips series. Read on for a review of the installments from the last 11 episodes and more!
- Spring Cloud Vault lead Mark Paluch just announced Spring Cloud Vault 1.0
- I did a podcast with my buddy and colleague Michael Coté on enabling microservices with devops. Or something.
- periodic reminder that SDKMAN! is awesome and you can use it to install Spring Boot:
sdk install springboot
- Using the JVM? (I sure hope so!) You might care about the discussion of the deprecation of
- Tangent: ZeroTurnaround put out a great cheat sheet covering some tips-and-tricks with
- the Java Pub House podcast has a nice interview with Spring Batch and Spring Cloud Task lead Michael Minella
- Łukasz Monkiewicz put together a nice post on request validation with Spring Boot
- Friendly remminder: the goal behind microservices, cloud-computing, agile and everything else you’ll hear Pivotal talking about is, ultimately, to get to continuous delivery, some of the tenants of which are nicely explained here
- Lars Trieloff, from Adobe, put together a very cool post discussing the paradigm shift in REST vs technologies like webhooks, where you’re still doing REST but they become more like topics in a messaging architecture
- I love this post, RabbitMQ: My Alternative ServiceBus for Windows Server
- Speaking of RabbitMQ: have you seen the new RabbitMQ website? It’s dynamite!
- Pivotal Cloud Foundry now has built-in support for durable persistence
- I liked this writeup of Neoj chief scientist Jim Webber’s introduction to how Neo4j achieves cluster consensus
- The Cloud Technology Partners podcast had a great interview with Pivotal’s Richard Seroter looking at the future of Cloud Foundry
- JaxEnter has a great German-language survey on microservices trend](https://jaxenter.de/microservices-trends-55937)
- Baeldung also has a great post on using the
@JsonComponentannotation with Spring Boot
Hi Spring fans! We’ve now finished two seasons - 11 episodes and a recap post each - of Spring Tips. I’m going to take a little while to dream up some more content and, before you know it, we’ll be back at it again! I’m always interested in hearing proposed topics so if you have some, please, by all means, shout it out loud to me on Twitter (@starbuxman) or by email ([email protected]).
The motivations for me in doing these Spring Tips are:
- revisit traditional topics in light of Spring Boot and
- highlight parts of the amazing Spring ecosystem that, for one reason or another, don’t get enough attention.