If you want to learn Spring and you have no, or very little, knowledge on frameworks yet (maybe you just finished with the Java fundamentals), then I recommend you read Spring Quickly. Spring Quickly (https://www.manning.com/books/spring-quickly) is a book I design together with Manning Publications to be perfect for someone just starting to learn Spring (with maybe no experience on a framework yet and only having the Java basics).
But one can’t learn everything in a book. The following resources are (in my opinion) a must-read for any Java/Spring developer.
I recommend continuing your reading on Spring with Spring in Action by Craig Walls. You will start with a refresher on what you learned in Spring Quickly, and you will continue learning a variety of projects which are part of the Spring ecosystem. You’ll find excellent discussions on Spring Security, asynchronous communication, Project Reactor, RSocket, and using Spring Boot’s actuator.
Check the sixth edition MEAP here: https://www.manning.com/books/spring-in-action-sixth-edition
Securing apps is a paramount subject you need to learn right after you finished with the very basics. You find a detailed discussion on using Spring Security to protect your app from different kinds of attacks by properly implementing authentication and authorization in another book I wrote, Spring Security in Action.
Spring Boot is one of the most important projects in the Spring ecosystem. Most of the teams today use Spring Boot to ease the implementation of their Spring apps. This is also why we used Spring Boot in more than half of the chapters of this book. Once you finish with the basics, I recommend you to take a deep dive into the details of Spring Boot. I found Mark Heckler’s Spring Boot Up & Running to be an excellent resource for a developer learning Spring, and I recommend this book as one of your subsequent reads after Spring Quickly.
In my projects, using a reactive approach for implementing web apps comes with great advantages. Josh discusses these advantages and demonstrates how to properly implement Spring reactive apps in his book Reactive Spring. I recommend you read this book after reading Spring in Action by Craig Walls.
As we discussed in chapter 15, it’s really important to test your application. In this book, we discuss the basics of testing Spring apps. But as this subject is so complex, it deserves its own book. Catalin discusses testing Java apps in detail in his book JUnit in Action. I recommend you read this book to strengthen your knowledge of writing tests.
In chapters 12 through 14, we discuss implementing the Spring apps persistence layer. In these chapters, I use SQL queries, assuming you already know the SQL basics. If you, however, need a refresher on SQL, I recommend you read Alan’s book Learning SQL, third edition. The book details all the essential SQL techniques you need to use in most apps.
To start learning Spring, you need to know to apply most of the basics already. But we sometimes need to refresh our knowledge even on the most fundamental syntaxes and techniques. Jeanne and Scott’s book for the OCP exam preparation is the first one I use to remember the basic syntaxes, and I always read the latest edition when I prepare to upgrade my OCP certification.
If you enjoy video tutorials and live events, you can find me on my YouTube channel (youtube.com/c/laurentiuspilca), discussing Java subjects. You find a full playlist on Spring here: https://www.youtube.com/watch?v=m-L-r862J-E&list=PLEocw3gLFc8Vli5p6rWHnNcYxFRbaIfIJ
Subscribe to the channel to get notified when I post new videos or schedule new live events.