Efficient Parsing of Reactive Buffer Streams

Engineering | Arjen Poutsma | September 14, 2021 | ...

It has been a while since Spring Framework 5.3 was released. One of the features in that release was a major overhaul of our Reactive Multipart support. In this blog post, we share some of the knowledge learned while working on this feature. Specifically, we focus on finding a token within a stream of byte buffers.

Multipart Form Data

Whenever you upload a file, your browser sends it — and other fields in the form — to the server as a multipart/form-data message. The exact format of these messages is described in RFC 7578. If you submit a simple form with a single text field called foo and a file selector called file, the multipart/form-data

This Week in Spring - September 14th, 2021

Engineering | Josh Long | September 14, 2021 | ...

Hi, Spring fans! It's September 14th! I can't believe it. I know this is a common refrain on my weekly posts, but can you believe it's already nearly Fall and Winter? What is happening?? How'd we get here so quickly?

Anyway, how are you doin'? I'm doing alright! It's been kinda a crazy week. I was in the studio all day and some of the night yesterday filming a new Livelessons video that I can't wait for y'all to see. (But be forewarned: there will be .YAML!)

Then, at 3am my time, I did a presentation for the Japanese Java User Group. This would be one thing in of itself, but what made this special for me was that I was supposed to appear at the JJUG six weeks ago. Yes, that six weeks ago. The same six weeks ago when I was convalescing with COVID-19, six weeks ago. Needless to say (but I will!), when one is sick with the virus, they sleep. So I did. A lot. And I ended up accidentally sleeping through my appearance. And they graciously, empathetically, and kindly agreed to reschedule a week (or two? It's all a blur to me) later. Anyway, I also slept through that one!! Ugh! I was and am so embarrassed! I still am…

Spring Data JDBC - How to use custom ID generation

Engineering | Jens Schauder | September 09, 2021 | ...

This is the first 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. (this article).

  2. Spring Data JDBC - How do I make bidirectional relationships?

  3. Spring Data JDBC - How do I implement caching?

  4. Spring Data JDBC - How Can I Do a Partial Update of an Aggregate Root?

  5. Spring Data JDBC - How do I Generate the Schema for my Domain Model?

If you are new to Spring Data JDBC, you should start by reading its introduction and this article, which explains the relevance of aggregates in the context of Spring Data JDBC

This Week in Spring - September 7th, 2021

Engineering | Josh Long | September 07, 2021 | ...

Hi, Spring fans! I am still reeling from the craziness of last week's SpringOne event! That doesn't mean that the world's stood still in the interim though! Quite the contrary! There's a ton of things to get to this week so without further ado let's go!

A Java 17 and Jakarta EE 9 baseline for Spring Framework 6

Engineering | Juergen Hoeller | September 02, 2021 | ...

As announced at SpringOne yesterday, Spring Framework 6 and Spring Boot 3 are planned towards a high-end baseline for their general availability in Q4 2022:

  • Java 17+ (from Java 8-17 in the Spring Framework 5.3.x line)
  • Jakarta EE 9+ (from Java EE 7-8 in the Spring Framework 5.3.x line)

This forward-looking baseline will provide significant benefits in our API design and integration efforts, shining through to your application code and future-proofing the framework as well as your applications for many years to come. However, it comes at a cost, of course: Spring Framework 6 and Spring Boot 3 based applications will require a minimum of JDK 17 at runtime, as well as a minimum of Tomcat 10 / Jetty 11 (for Jakarta EE 9 compatibility). Even more importantly, there might be some changes required in your application source code: e.g. the javax to jakarta

Spring GraphQL 1.0.0-M2 available now

Engineering | Brian Clozel | September 01, 2021 | ...

Less than 2 months after the initial announcement of Spring GraphQL and its follow up intro blog, I'm happy to announce that the 1.0.0-M2 version has been released and is available from the Spring Milestone repository.

The Spring GraphQL team would like to thank the early adopters and contributors - with your help, we're making good progress towards a GA version!

We've fixed a few issues and renamed a couple of concepts, but the most notable change is the introduction of a new annotation model for GraphQL Controllers. You can now annotate @Controller components to handle queries, mutations…

Monitor Spring Boot applications end-to-end using Dynatrace in Azure Spring Cloud!

Engineering | Josh Long | September 01, 2021 | ...

Today, we are excited to announce the integration of the Dynatrace Software Intelligence Platform in Azure Spring Cloud.

Over the past 18 months, we worked with many enterprise customers to learn about the scenarios they face. Many of these customers have thousands of Spring Boot applications running in on-premises data centers. As they migrate these applications to the cloud, they need to instrument them for application performance monitoring (APM) using solutions their developers are familiar with and have been using for years. In addition, they must ensure continuity for desktop and mobile…

Get the Spring newsletter

Stay connected with the Spring newsletter

Subscribe

Get ahead

VMware offers training and certification to turbo-charge your progress.

Learn more

Get support

Tanzu Spring offers support and binaries for OpenJDK™, Spring, and Apache Tomcat® in one simple subscription.

Learn more

Upcoming events

Check out all the upcoming events in the Spring community.

View all