Hi, Spring fans! Welcome to another installment of This Month in Spring! Do you know these digests have themselves been a going thing for more than a couple of years now? Isn't that wild? They spun out of the This Week in Spring blogs I do over on the Spring blog every Tuesday, and that I have been doing since the first week of January 2011.
Wild. Time sure flies when you're having fun. Case in point: I just passed ten official years on the Spring team on August 2, 2020]. I was a part of the community and a big fan before that. You can learn more about the journey so far in this blog. What a crazy ride it's been, and I look forward to the continued adventure! Do you know what my favorite part about the whole thing has been? You. You're why it remains an exceedingly lovely privilege to jump out of bed every morning to meet the new day and the new opportunities! I can't imagine what this experience would've been like without you. Hopeless and not just a little lonely, I imagine! You're awesome.
Besides, it feels like no matter what horizon I set for myself, my workload seemingly always exceeds it. I've been busy since we last talked! First, I released updates to my Reactive Spring book. If you've already purchased it, you'll get the updates for free. If you haven't, then, do, won't you? The latest edition contains a ton of polish, updates, and – most importantly – a whopping 70+ page chapter on RSocket. Please, check it out and let me know how you like it.
Speaking of RSocket, I also just published a video – The RSocket Revolution that is a roving tour of all things bootiful, reactive and RSocket. The video looks at a ton of the integrations for RSocket in the Spring ecosystem, starting with Spring Framework's @Controller
support, the rsc
CLI, RSocketRequester
-powered Spring clients, and of course the Spring Integration outbound gateway. Then, I look at integrating Spring Security into an RSocket-based application to lock down communication at connection time or per-request. Finally, I looked at one of the essential aspects of RSocket – the ability to do bidirectional communication. I hope you'll check it out! If you like the video, please like it on YouTube. And if you don't, well, I think that other button works too. (Though, I do hope you like it!)
One thing that's not covered in that RSocket chapter and is only briefly alluded to in that video? Spring Retrosocket. It's too new! But hopefully, one day that'll change. I'd love for you to try it out. It's a Feign- or Retrofit-like declarative client for RSocket. I hope you'll give it a shot. I built it on a lark, after an inspired conversation with Mario Gray.
And, through all of this is the flurry of preparation that goes into any SpringOne event, this one even more complicated because it's entirely online! You're going to be there, aren't you? It's going to be extra impressive. Here are a few things that are different from all the other editions: it's entirely free, and it's entirely online. The same winning content, speakers, and technology paired with a hard-to-beat price, and you won't even have to leave home! Some things should not be open-source, most of all, COVID-19.
Alright, we've got a ton to review; andiamo!
- A Bootiful Podcast: RSocket everywhere and Maciej Walkowiak on Spring Cloud AWS
- A Bootiful Podcast: Software Security in the Supply Chain
- A new video in the Spring Cloud AWS series, this one looking at how to scale out databases with RDS and Spring Cloud AWS.
- Case Study: HTTP Request Function and Processor
- CockroachDB & Spring Tutorials for Spring Data JDBC, JPA, & MyBatis
- Config file processing in Spring Boot 2.4
- Creating Efficient Docker Images with Spring Boot 2.3
- Getting started with Spring Cloud AWS – YouTube
- Hooking Into the Spring Bean Lifecycle
- How
cf-for-k8s
Reinvents Cloud Foundry as a Native Kubernetes App Platform - Interesting post on the performance of user-mode threads and coroutines
- Introduction – Spring Boot on GCP
- Microsoft's Rory Preddy on Integrating "Reactive" APIs to traditional relational databases
- New candidate JEP: 389: Foreign Linker API (Incubator)
- Premiering: The RSocket Revolution
- Spring Batch 4.3.0-M2 is out!
- Spring Boot 2.3.3 available now
- Spring Boot 2.4.0-M2 is now available
- Spring Data 2020.0.0-M2 released
- Spring Data Neumann SR3 released
- Spring Initializr 0.9.1 available now
- Spring Integration 5.4 M2 Available
- Spring Security 5.3.4, 5.2.6, 5.1.12, 5.0.18, 4.2.18 Released
- Spring Security 5.4.0-RC1 Released
- The recent improvements to the way that Spring Boot loads configuration portend some nice changes for users of the Spring Cloud Config Server…
- VMware Hits the Ground Running with the Launch of Open Source Security Foundation
- Want to contribute to Spring Cloud Contract and move the code from Groovy to Java? We'd love your help
- What is Spring? A nice 4 minute explainer by Mark Heckler
- jdk/jdk repository transitions to Git, GitHub and Skara: September 5
- A Bootiful Podcast: JFrog's Baruch Sadogursky on continuous delivery, DevOps, Java artifact management and more
- Announcing preview of Java Message Service 2.0 over AMQP on Azure Service Bus | Azure Blog and Updates | Microsoft Azure
- Case Study: Build and Run a Streaming Application Using an HTTP Source and a JDBC Sink
- Delivering compressed SVG format(SVGZ) using Spring Boot | yusuke.blog
- Did you hear? Tanzu Application Service 2.0 is now GA!
- Introduction into Spring Data Elasticsearch – wrote a small app using Spring Data Elasticsearch, spent yesterday evening to write up my impression from the perspective of a heavy Elasticsearch user.
- I'm honored to have books to which I contributed included not once, not twice, but three times in this list of interesting Java ecosystem books.
- On the Performance of User-Mode Threads and Coroutines
- Registered for VMworld 2020? Check out these Sessions from the Education Services Team
- Solace has a nice presentation up on YouTube: developing event-driven micro services using Spring Cloud Stream
- Spring Framework 5.2: Core Container Revisited
- Spring Framework 5.3.0-M2 available now
- Spring Web Services Samples have been updated!
- This Week in Spring – August 4, 2020
- Which conference are you most excited by in the next few weeks?
- the latest installment of the (German language) "Java Magazin" looks to have a whole thing about Spring and Spring Boot! Check it out.
- A Bootiful Podcast: Josh Lock on supply chain security, Docker trust, TUF, and more
- Confluent put on yet another great stream on Spring Boot and Apache Kafka
- I am doing a two-day, online, Cloud Native Java workshop for the legendary YOW! conference. Please register now!
- Check out Michael Hunger's Twitch stream tomorrow wherein he'll explore the brand-new Spring Data Neo4J 6 (including the reactive support) on Wednesday, 11am CEST, 7pm AEST, 2:30 IST, 9am GMT.
- Check out This Month in RabbitMQ, June 2020 Recap
- Check out the latest release of the Cloud Native Petclinic. This Petclinic is ready-to-deploy on Cloud Foundry and Kubernetes and demonstrates a fully-featured decomposed microservices-based application.
- Check out this event Developing Event-Driven Microservices using Spring Cloud Stream coming tomorrow!
- Creating a function for consuming data and generating Spring Cloud Stream Sink applications
- Destination VMworld – App Modernization Channel
- Have you listened to this fun episode of a Bootiful Podcast with Tim Pepper?
- I loved this: VMware CEO Pat Gelsinger shares on how VMware Tanzu will shape the future of software development on the newest episode of the Looking Ahead podcast
- Integrating JSON Schema validation in Spring using a custom HandlerMethodArgumentResolver
- Java Is a 90s Kid. "There are only two kinds of languages…" by Ben Evans from the 97 Things book about Java. (NB: I also contributed an article to the book!)
- My amazing first manager Adam Fitzgerald in my ten year anniversary on the Spring team
- Spring Cloud Data Flow 2.6.0 Released
- Spring Cloud Hoxton.SR7 has been released
- Spring HATEOAS 1.1.1.RELEASE is out!
- Spring Tools 4.7.1 released
- The Lettuce 6 Redis driver goes RC1. Client-side caching, Push message listeners, and GraalVM Native config files, and more.
- VMworld 2020 Savings on Certification Exam Vouchers & Prep
- Want training on how to build Spring Boot-based applications? [Check out the Spring Boot: Developer module](https://tanzu.vmware.com/training/courses/spring-boot-developer-training)
- This post has nothing to do with Spring per-se but it is well-worth your study if you're using something like Axon to build a CQRS-centric system: What they don't tell you about event sourcing, by Hugo Rocha
- A Bootiful Podcast: Intuit's Katie Levy on Spring Boot, Kotlin, Android and more
- Announcing Spring Cloud Data Flow for Kubernetes.
- At @VMware, @sinasojoodi & @RKela are helping retailers migrate to event streaming and event-driven microservices. Hear all about it on today's episode of #StreamingAudio, hosted by @tlberglund, where they cover @springcentral and much more!
- Building a Chat application with Angular and Spring Reactive WebSocket: Part 2 | by Hantsy | Jul, 2020 | Medium
- Check out this guide to learn how to schedule `Task's with Spring
- Clean Architecture Boundaries with Spring Boot and ArchUnit
- Collaborative Leadership: Transparency and Governance Beyond Company Affiliation
- Did you miss this "TGI Kubernetes"? It was good!
- Don't forget I'll be taking over the SpringOne Tour tomorrow! Save your seat!
- From Mainframe to Microservices with Pivotal Platform and Kafka: Bridging the Data Divide
- Getting started with RSocket in Spring Boot
- GitHub, the world's largest open-source software site buries 21 TB open-source code in Arctic vault for 1,000 years. This is super cool! And particularly so because it includes a ton of Spring projects to which I, and many other community users, have contributed. Thank you, community! Your work will endure in production today and in the hearts and minds of those who succeed us 1,000 years from now!
- Have you checked out our amazing intro-to-Kubernetes, KubeAcademy?
- Hiya Spring fans! I'll be presenting both tomorrow and Thursday morning at 8:30am PST-ish for the Reactive edition of SpringOne Tour. Join us, won't you?
- How to deliver software by writing tests first.
- I love this deep look at the Tanzu Observability platform, powered by Wavefront
- Introducing Java Functions for Spring Cloud Stream Applications – Part 1
- Is there any need to switch to modules when migrating past Java 8? No.
- Loom Q&A
- Mapping a path query in Spring Data Neo4J
- Rethinking the role of MemorySegment vs. MemoryAddress
- Save Your Stack: Build Cloud Native Apps with Spring, Kubernetes and Cassandra | VMware Tanzu Developer
- Serializable Records – another interesting post on Inside.java
- Setup a Spring Boot application fast using Spring Initializr
- SivaLabs has a ton of great articles that look at building microservices with Spring Boot and Spring Cloud
- Speaking of SpringOne, have you registered for this year's all-free, all-online SpringOne 2020 event? It'll take place on September 2-3, 2020. Don't miss this!
- Spring Boot Two-Factor Authentication by Amr Khaled over on the Javarevisited blog
- Spring Data JPA: Query Projections
- Spring Framework 5.2.8, 5.1.17, 5.0.18, and 4.3.28 available now
- Spring Initializr 0.9.0 available now
- The Bootiful Podcast: Instrumenting and Visualizing the Linux Kernel
- This Google Cloud portal has tons of great stuff on optimizing Spring Boot and Java applications for Google Cloud Run
- This is a very thoughtful post on dependency management in Java over on the Azure Java blog.
- Thoughts from the Front-line: Why Wavefront? | by Clement Pang | Jul, 2020 | Medium
- Want to get hands-on experience with Spring? Now you can.
- What the Education Services Team has in Store for You at VMworld 2020
- the first release of the R2DBC PostgreSQL driver from within the PostgreSQL organization has been cut!