5 Spring Framework Books Experienced Java Developers Should Read
Spring has evolved by leaps and bounds in the past few years. If you want to keep up, here are five must-reads that you'll want to get through to stay ahead of the curve.
Join the DZone community and get the full member experience.Join For Free
The Spring framework has changed a lot in the last a couple of years. In 2017 and 2018, we have seen major releases for Spring, Spring Boot, and Spring Security. These new releases introduced several exciting features to meet the latest software development trends, e.g. reactive programming, support for Kotlin for developing Spring applications, Spring WebFlux — a new framework to develop non-blocking and reactive web applications — and many more. Since the software world is changing and most development is happening on the cloud with Microservices architectures leading the way, it's high time that experienced Java developers upgrade themselves.
If you have been using Spring for years but haven't got a chance to catch up with all the latest development trends in the Spring world, then the year of 2018 is the best time to correct that.
After Java SE 8's release, most Java frameworks were upgraded to support the new style of coding in Java. It has now become standard in Java — and the code written using the old style is no longer in practice.
It makes sense: You just can't write code in the old way if a better option is available that is more readable, intuitive, and provides better performance. Same goes for the Reactive programming model.
Well, I will accept that once you gain experience, your learning slows, and many Java developers, including myself, don't put enough effort into keeping ourselves up-to-date.
Your company also plays an important role in this. For example, if you are working for investment banks and big organizations using old technologies, then you are less likely to upgrade yourself because there is no push.
But if you are working for a startup that is very agile on adopting latest and greatest frameworks, libraries, and technology, you will likely to upgrade yourself more often.
Top 5 Spring Books for Java Developers in 2018
Anyway, if you want to give your career a boost and break the shackles, here are a couple of Spring books I think experienced Java developers should read to learn about new features of Spring 5, Spring Boot, Spring Cloud, and how to develop Java applications for the cloud using Spring frameworks.
Pro Spring 5
This should be one of the first few books you read in 2018, of course only after you finish Effective Java. This book will help you to discover what's new in Spring Framework 5, e.g. Reactive features, WebFlux etc.
It will also teach you how to use the Spring Framework with Java 9 and master data access and transactions, work with the new functional web framework, and create microservices and other web services using Spring Boot and other cloud technology.
Even though I like Spring in Action more than any other book in Spring framework, I suggest you follow this book if you are learning Sring framework in 2018. It's more up-to-date and follows latest practices for developing Java applications with Spring.
Cloud Native Java
This is one of the must-read Spring books in 2018 for Java developers who want to learn how to design and develop production-quality Java applications for the cloud.
The full title of the book is "Cloud Native Java: Designing Resilient Systems with Spring Boot, Spring Cloud, and Cloud Foundry" and as the title suggests, it covers all the technology and frameworks you need to roll out your first Java application for the cloud.
Both authors, Josh Long and Keeny Bastani, are experts in Spring and provide a detailed overview of all the technology mentioned in the title, e.g. Spring Boot, Spring Cloud, and Cloud Foundry, while keeping the real world examples in focus, e.g. their story of Amazon, Netflix, and Uber.
This book is aimed primarily at experienced Java/JVM developers who are looking to build cloud-based Java applications using Spring Boot, Spring Cloud, and Cloud Foundry. There are tons of details, which can be overwhelming sometimes.
If you don't know Spring, then this is not the book for you, instead, you should first read the Spring in Action or Pro Spring Book to get yourself familiar with Spring, or you can take the Spring MasterClass course on Udemy.
If you are interested in microservices or Spring Boot and wondered why many companies are using Cloud Foundry, then you should read this book.
Learning Spring Boot 2.0
Apart from Spring 5, the other major releases in 2017 were Java 9 and Spring Boot 2.0, and this is the best book to learn all the changes made in Spring Boot 2.0 release.
This book explains the examples with detailed explanations of complex reactive topics, and it's well-organized to build an application from scratch on the Reactive paradigm.
By the way, again, this book is not for beginners. You need experience in Java 8 and you should be familiar with concepts like lambdas. You also need a basic understanding of Spring Boot and Spring framework, reactive programming, and cloud computing to get the most out of this book.
If you are looking to build efficient backends and microservices using Spring Boot, then this is the must-read the book for you. I also recommended this book to anyone who is trying to learn Spring Boot 2.0 with reactive programming model concepts.
Spring 5 Recipes: A Problem-Solution Approach
If you like to learn new concepts by following how-tos tutorial and recipe books, then this is the book for you. It not only covers new features of Spring 5, but also teaches you how to develop using Spring 5 and Java 9.
It provides reusable code recipes and snippets from core Spring and Spring MVC, which can be used in web development. It also has recipes covering how to work with Spring REST and Microservices for web services development.
It also covers Spring Batch, NoSQL, and Big Data for building and integrating various cloud computing services and resources.
Overall, a nice book to learn modern Java development with Spring 5.
Spring Microservices in Action
There is a lot of buzz around microservices, and Spring is leading the way by offering technologies you need to build a microservice-based application in Java.
In this book, John Carnell will teach you how to build microservice-based applications using Java and the Spring platform in a step-by-step, organized manner.
It not only teaches you core microservice design principles but also all the technology you need to develop and deploy your microservices in the real world.
You will learn about how Spring Boot and Spring Cloud simplify your microservice applications and all the tools Spring Cloud provides for the discovery, routing, and deployment of microservices to the enterprise and the cloud, e.g. Hystrix, Ribbon, etc.
That's all about some of the best books to learn Spring framework in 2018. These books will help you to learn all key technologies and frameworks, e.g. Spring Boot, Spring Cloud, Spring 5 updates, and Spring Security 5 updates, which are very important for a Java web developers.
Published at DZone with permission of Javin Paul, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.