1058 matches found
Simplified Event Externalization with Spring Modulith
Transactional service methods are a common pattern in Spring applications. These methods trigger a state transition important to the business. This usually involves a core domain abstraction, such as an aggregate and its corresponding repository. A stereotypical example of such an arrangement mig...
Paketo Buildpacks Bionic End Of Support
The Spring Boot plugins for Maven and Gradle provide the ability to build Docker images using Cloud Native Buildpacks. By default, Spring Boot uses the CNB builders provided by the Paketo Buildpacks project. What's Changed The Paketo Buildpacks project has announced that Ubuntu 18.04 Bionic-based...
A Bootiful Podcast: Java community legend Sharat Chander
Hi, Spring fans! Java 21 is out and in order to celebrate, I talk to Java community legend Sharat Chander...
Hello, Java 21
Hi, Spring fans! Get the bits Before we get started, do something for me quickly. If you haven’t already, go install SKDMAN. Then run: sdk install java 21-graalce && sdk default java 21-graalce There you have it. You now have Java 21 and graalvm supporting Java 21 on your machine, ready to go. Ja...
Spring Tips: Making the joyful jump to Java 21
Hi, Spring fans! Java 21 and GraalVM supporting Java 21 are at long last here! It's been a long time in coming, but Java 21 - which comes out later today on the 19th of September, 2023 - brings with it some of the most exciting new features of any Java release. In this video, I will look at some ...
This Week in Spring - September 19th, 2023 (Java 21 Edition)
Hi, Spring fans! Welcome to another installment of This Week in Spring - Java 21 edition! The big news, indeed, the biggest news, is that Java 21 is now available here! You should use SDKMAN to install it, like this: sdk install java 21-graalce && sdk default java 21-graalce. This install givews...
Exposure of data and identity to wrong session in Spring for GraphQL
A batch loader function in Spring for GraphQL versions 1.1.0 - 1.1.5 and 1.2.0 - 1.2.2 may be exposed to GraphQL context with values, including security context values, from a different session. An application is vulnerable if it provides a DataLoaderOptions instance when registering batch loader...
This Week in Spring - September 12th, 2023
Hi, Spring fans! Welcome to another installment of This Week in Spring! How are you this fine 12th of September? I'm doing alright, elated, even. I've just returned from beautiful Oslo, Norway, and I've got a busy 30 days or so ahead, starting today. I'm visiting Seattle, WA; Mexico City, Mexico;...
All together now: Spring Boot 3.2, GraalVM native images, Java 21, and virtual threads with Project Loom,
This has been a very long time in coming, but finally we can create GraalVM native images that use Spring Boot via Spring Boot 3.2 and Java 21's virtual threads Project Loom! Why does all this matter? Each of these individual things, Project Loom, and GraalVM native images, offer compelling runti...
A Bootiful Podcast: Spring Security lead Rob Winch
Hi, Spring fans! Welcome to another installment of a Bootiful Podcast. In this interview, Josh Long @starbuxman talks to Spring Security legend and lead Rob Winch @robwinch, recorded live from SpringOne 2023!...
This Week in Spring - September 5th, 2023
Hi, Spring fans! Welcome to another installment of This Week in Spring! How are you? I just got back from another fabulous labor day weekend, and am headed to Oslo, Norway, for the fabulous JavaZone 2023 event. This will be my first time returning to lovely Oslo, Norway, since the pandemic! I can...
A Bootiful Podcast: Spring Security and Kubernetes legend Daniel Garnier-Moiroux
Hi, Spring fans! In this installment Josh Long talks to Spring contributor and adjunct professor at Mines Paris, Daniel Garnier-Moiroux @kehrlann, about the wild and wonderful intersection of all things Spring Security and Kubernetes, productized Spring Cloud Services, and more, recorded live at...
This is the Beginning of the End of the N+1 Problem: Introducing Single Query Loading.
TL;DR: Starting with Spring Data JDBC 3.2.0-M2, Spring Data JDBC supports Single Query Loading. Single Query Loading loads arbitrary aggregates with a single select statement. To enable Single Query Loading you need to call setSingleQueryLoadingEnabledtrue on your RelationalMappingContext. In...
This Week in Spring - August 29th, 2023 - the post SpringOne recovery blog
Hi, Spring fans! Welcome to another installment of This Week in Spring! I'm exhausted. Seriously. Last week was mental. If you need me, I'll be over sipping on a tea... But, before that, there's a ton of things to cover from this last week, as always, and there's no rest for the curious, so let's...
Spring Data JDBC - How To Maintain Your Database Schema
This is the fifth article of a series about how to tackle various challenges you might encounter when using Spring Data JDBC. The series consists of: 1. Spring Data JDBC - How to use custom ID generation? 2. Spring Data JDBC - How do I make bidirectional relationships?. 3. Spring Data JDBC - How ...
My SpringOne 2023 Recap
Hi, Spring fans! Look, it's Monday after the first in-person SpringOne of the 2020s and the first since the pandemic, and, being honest, I'm bushed! Vegas is a dizzying, sensational, overwhelming, exciting experience, and SpringOne is too. But it was worth it. The SpringOne show surpassed all...
A Bootiful Podcast: cloud native Chris Richardson
Hi, Spring fans! In this installment, Josh Long @starbuxman talks to original cloud native Chris Richardson on microservices, architecture, and more...
This Week in Spring - August 22, 2023
Hi, Spring fans! Welcome to another installment of This Week in Spring! And, would you believe it, I'm writing this at SpringOne 2023, in sunny Las Vegas, Nevada. This is the first in-person SpringOne since 2019, and I'm so, so, so glad to be here! We've got a ton of things to get into this week,...
Tackling the OAuth2 Client component model in Spring Security
In Spring Security 5, we saw many developments in the OAuth2 story with the introduction of OAuth2 Resource Server and OAuth2 Client into the framework. Today, it is quite convenient to develop applications that are secured by OAuth2 using the features available in OAuth2 Resource Server...
A Bootiful Podcast: Tadaya Tsuyukubo, creator of R2DBC Proxy, DataSource Proxy, and more
HI, Spring fans! In this installment Josh Long talks to R2DBC Proxy creator Tadaya Tsuyukubo, @ttddyy, creator of R2DBC Proxy and others...
This Week in Spring - August 15th, 2023
SpringOne, the first in-person SpringOne since the pandemic! - is next week!! I'm so excited I could spit. And I did spit. And then, I asked ChatGPT for some help writing a poem, and it did not disappoint! T'was a week before SpringOne, in Las Vegas so grand, Where devs from all corners would soo...
A Bootiful Podcast: Spring Cloud cofounder and lead Spencer Gibb on Spring Cloud Gateway for the Servlet API in the era of Project Loom
Hi, Spring fans! In this installment, my first since I returned from two blistering hot but super fun months in Asia, I talk to Spring Cloud cofounder and lead Spencer Gibb @SpencerBGibb about the new Servlet-friendly Spring Cloud Gateway project...
This Week in Spring - August 8th, 2023
Hi, Spring fans! Welcome to another installment of This Week in Spring! I'm baaaaack in the USA for the first time in more than two months, and it feels great to be home! I just concluded a tour of Asia, visiting Taipei, Taiwan Sydney, and the Blue Mountains, in Australia Seoul, S. Korea Singapor...
A Bootiful Podcast: UL Systems founder and chairman Shigeru Urushibara interviews.. me?
Hi, Spring fans! I just crossed 13 years on the Spring team! I just got to spend a lovely day in the presence of one of my heroes and friends, UL Systems founder and chairman, Shigeru Urushibara-san @ulsystems, here in Tokyo, Japan, and in this episode, we sort of flip the script. We had a brief...
This Week in Spring - August 1st, 2023
Hi, Spring fans! Welcome to another installment of This Week in Spring! Can you believe it's already August 1, 2023??? Me either. As I write this, I'm preparing some of my contributions for SpringOne at VMWare Explore 2023, happening next month in lovely Las Vegas, NV. Have you registered yet? I'...
A Bootiful Podcast: Spring team legend Dr. David Syer on view rendering technologies, the latest-and-greatest, SpringOne 2023, and more
Hi, Spring fans! In this installment Josh Long talks to the legendary Dr. David Syer about view rendering technologies, SpringOne, and more. Have you registered for SpringOne yet? Are you interested in learning Spring? Check out Spring Academy...
This Week in Spring - July 25th, 2023
Hi, Spring fans! Welcome to another installment of This Week in Spring! Look, I'm going to level with you. This is the view from where I'm staying on holiday right now in tropical Lankawi, Malaysia: I'm super interested in this week's roundup, as always, but I'm also very interested in that...
A Bootiful Podcast: Java legend Simon Martinelli on Vaadin, JavaOOQ, and so more
Hi Spring fans! In this installment Josh Long talks to Java legend Simon Martinelli about Vaadin, Spring, JavaOOQ, and more. This episode was recorded live from beautiful Barcelona, Spain at the amazing Spring I/O show!...
This Week in Spring - July 18th, 2023
Hi, Spring fans! Welcome to another installment of This Week in Spring! I'm in crazy cool Kuala Lumpur, Malaysia. If you're around, I'll be doing a presentation this Thursday the 20th of July, and I'd love to see you there! Then, after a quick vacation, it's off to Tokyo, Japan, where I'll also b...
A Bootiful Podcast: Spring Framework and Spring Boot legend Stéphane Nicoll on a Bootiful Podcast
Hi, Spring fans! Welcome to another installment of A Bootiful Podcast! In this installment, Josh Long talk to Spring team legend Stéphane Nicoll @snicoll about Spring Boot, Apache Maven and Gradle, his journey to the Spring team, and so much more. This episode was recorded live from beautiful...
New in Spring 6.1: RestClient
Spring Framework 6.1 M2 introduces the RestClient, a new synchronous HTTP client. As the name suggests, RestClient offers the fluent API of WebClient with the infrastructure of RestTemplate. Fourteen years ago, when RestTemplate was introduced in Spring Framework 3.0, we quickly discovered that...
This Week in Spring - July 11th, 2023
Hi, Spring fans! Welcome to another installment of This Week in Spring! I'm in yummy, sunny Jakarta, Indonesia at the moment, preparing for a week of meetings and the SpringOne Tour Indonesia event later this week. I'll also be speaking in Kuala Lumpur, Malaysia on July 20th, 2023 . If you're in...
Azure Spring Apps Enterprise – More Power, Scalability & Extended Spring Boot Support
Can you believe Spring is celebrating its 20th anniversary this year? We could not have gotten here without our millions of Spring developers across the globe, thank you! Spring has been an essential tool for Java developers, and it continues to grow and innovate at a fast pace. From the onset,...
A Bootiful Podcast: Jetbrains' Anton Arhipov on IntelliJ, Java, and so much more
Hi, Spring fans! Welcome to another installment of A Bootiful Podcast! This week Josh Long talks to Jetbrain's developer advocate Anton Arhipov, recorded live from the amazing Spring IO show in Barcelona, Spain!...
Active Health Check strategies with Spring Cloud Gateway
Active health check strategies with Spring Cloud Gateway Nowadays, applications are built as a collection of small independent upstream services. This accelerates development and allows modules to be focused on specific responsibilities, increasing their quality. This is one of the main advantage...
This Week in Spring - July 4th, 2023
Hi, Spring fans! Welcome to another installment of This Week in Spring! This week I am in sweltering, but lovely, Singapore, where I'm meeting with customers and just finished presenting at the SpringOne Tour Singapore stop. If you're in Singapore, I hope you'll join me tonight for Bootiful Sprin...
Building intelligent Spring Apps with Azure OpenAI
Note from Josh: Hi, Spring fans! I wanted to cross post this article looking at using Spring and Azure OpenAI from Microsoft's Sean Li because it's interesting: enjoy! Integrating cutting-edge artificial intelligence into apps has become a new trend in today's technological landscape. Spring is t...
A Bootiful Podcast: Elastic's Philipp Krenn
Hi Spring fans! Welcome to another installment of a Bootiful Podcast! In this installment, Josh Long talks to Elastic's Philipp Krenn, live from Spring IO 2023 in beautiful Barcelona, Spain!...
This Week in Spring - June 27th, 2023
Hi Spring fans! Welcome to another installment of This Week in Spring! This week I am in Seoul talking to developers about the latest-and-greatest in Spring Boot 3! There's so much great stuff coming, and so much great stuff already. There are a few things I'm super excited about. First, yesterda...
Using Spring for GraphQL with Spring Data Neo4j
Introduction This is a guest blog post by Gerrit Meier from Neo4j who maintains the Spring Data Neo4j module. A few weeks ago version 1.2.0 of Spring for GraphQL was released with a bunch of new features. This also includes even better integration with Spring Data modules. Motivated by those...
Improved Testcontainers Support in Spring Boot 3.1
There's been support for Testcontainers in Spring Boot for some time now, and Spring Boot 3.1 improves it further. But first, let's take a look at what Testcontainers is and how it's usually used. Testcontainers is an open source framework for providing throwaway, lightweight instances of...
A Bootiful Podcast: Micrometer lead Tommy Ludwig
Hi, Spring fans! In this installment, Josh Long talks to Micrometer lead Tommy Ludwig, recorded from beautiful Barcelona, Spain during the fabulous Spring I/O event!...
Docker Compose Support in Spring Boot 3.1
Docker Compose support in Spring Boot 3.1 builds on top of the ConnectionDetails abstraction, which we've featured in a separate blog post. If you haven't already read it, please do so before reading this post. Docker Compose "is a tool for defining and running multi-container Docker applications...
This Week in Spring - June 20th, 2023
Hi, Spring fans! Welcome to another installment of This Week in Spring! I'm in Sydney, Australia, talking to customers, koalas, kangaroos, and whoever else will listen! I'll be doing a live presentation, tonight at the Microsoft Reactor here in Sydney. Register now and come join me! As usual, we'...
Spring Boot 3.1's ConnectionDetails abstraction
If you've used Spring Boot for a while, you're probably familiar with setting up connection details using properties. For example, you may have used spring.datasource.url to configure a JDBC connection. In Spring Boot 3.1 this continues to work as you'd expect, but we've changed things a bit unde...
A Bootiful Podcast: Angular Google Developer Expert Santosh Yadav
Hi, Spring fans! In this installment Josh Long @coffesoftware talks to Angular Google Developer Expert Santosh Yadav @santoshyadavdev about the latest and greatest in the JavaScript and Angular ecosystem...
This Week in Spring - June 13th, 2023
This Month in Spring - June 13th, 2023 Hi, Spring fans! Welcome to another installment of This Week in Spring! I am in beautiful Taipei, eating delicious food and meeting amazing people in the sweltering weather. How're you doin'? I've got to join a meeting, so I'll make this quick. One quick thi...
A Bootiful Podcast: Microsoft’s Sean Li on Azure and Spring Boot
Hi, Spring fans! In this relatively quick installment, recorded live from the lovely Spring I/O 2023, Josh Long talks to Microsoft's Sean Li about some of the latest and greatest in the Azure ecosystem for Spring developers...
Securing Spring Boot Applications With SSL
Secure Sockets Layer SSL and Transport Layer Security TLS are key components of securing communications between systems in a layered or service-oriented architecture. Spring Boot applications in such an architecture often accept incoming network connections or create outgoing connections, and...
This Week in Spring - June 6th, 2023
Hi, Spring fans! Welcome to another installment of This Week in Spring! And what an insane week it's been! Long story short, I've spent 10-12 hours a day over the last five days migrating a dozen differnet applications and services from one GKE cluster to another, taking the time to update things...