21 Books Java Developers Should Read in 2021

Aug 8, 2020 · 19 min read

Hello folks, If you are a Java developer and wondering what to read in the remaining of 2021, then you have come to the right place. In this article, I am going to share 10 books on Java, Spring, and related technology a Java developer can read.

I have included books for both experienced Java developer who is more inclined to learn about architecture stuff, developing for Cloud, MicroService, Java 9 to Java 14 features, and Spring 5 features and thinking of learning Kotlin to improve their productivity.

Still, I have not forgotten junior and less experienced Java developers or some who are thinking of starting their journey into the Java world in 2021.

I have also included books you can read to learn recent Java versions in 2021. Some of the books like Core Java SE 9 for the Impatient and Java: A Beginner’s Guide has been updated to cover the Java SE 9 release.

This means if you have just started learning Java or thinking to learn, those are ideal books to start. There is no point in starting with old books unless we are talking about Head First Java.

I really hoped that the 3rd edition of Head First Java is long due and the author and publisher should take notice to update the book to include changes in Java 8 and Java 9, but, it still a good book for people just starting to learn to program with Java without any prior experience in the programming world.

One of my recent addition to this list is Cloud Native Java, which I found recently. The book looks fantastic as it covers the much-needed topic of developing a Java application for Cloud using the Spring Boot, Spring Cloud, and Cloud Foundry. I haven’t read it thoroughly yet, but so far, it looks incredible.

21 Java Books for Programmers of all skill level

There are a lot of good books you can read in 2021 to improve your Java knowledge and skill, but it’s practically not possible to read them all. Still, at the same time, there are individual books that you don’t want to miss like Effective Java 3rd Edition, and that’s why I have included it at the first position on my list.

This list contains books on Java 9 and 10 features, Spring 5, Kotlin, Sofware Architecture, Microservices, Cloud, and to learn essential elements of Java 8 release.

Even though the list is not very long, the books included in this list are fantastic, and you can easily read them during your commute to work.

1. Grokking the Java Interview

This is my first book in 10 years. If you follow me then you might know that I have been writing Java articles since 2010 but I didn’t have any book or course, well this year I have achieved that. Now, I have my own book — Grokking the Java Interview and my own Udemy course — Practice Exam for Spring Certification.

Cracking Java Interview is not easy and one of the main reasons for that is Java is very vast. There are a lot of concepts and APIs to master to become a decent Java developer.

Many people who are good at general topics like Data Structure and Algorithms, System Design, SQL, and Database fail to crack the Java interview because they don’t spend time to learn the Core Java concepts and essential APIs and packages like Java Collection Framework, Multithreading, JVM Internals, JDBC, Design Patterns, and Object-Oriented Programming.

This book aims to fill that gap and introduce you to classical Java interview questions from these topics.

Here is the link to buy this book Grokking the Java Interview

The book is also available on Amazon for Kindle book lovers and you can buy it for just $9.9 here.

1. 97 Things Every Java Programmer Should Know: Collective Wisdom from the Experts

This is one of its kind book where you will learn 97 important things from Java experts around the world. This book is compiled by Trisha Gee and Kevlin Henney this book includes Java programming advice from 97 experts like Mala Gupta

A few of the 97 things you should know:

  • “Behavior Is Easy, State Is Hard” — by Edson Yanaga
  • “Learn Java Idioms and Cache in Your Brain” — by Jeanne Boyarsky
  • “Java Programming from a JVM Performance Perspective” — by Monica Beckwith
  • “Garbage Collection Is Your Friend” — @Holly K Cummins
  • “Java’s Unspeakable Types” — Ben Evans
  • “The Rebirth of Java” — Sander Mak
  • “Do You Know What Time It Is?” — Christin Gorman

If you want to just read book, I thin you should read this book on 2021, it will certainly leave a lasting impression on you and help you to make a better developer.

A big thanks to the Java community for creating this awesome book.

2. Cloud-Native Java

Hello guys, If you have read till here, then you have earned a bonus, and that’s why I am sharing one of the most useful Java books of 2021, the Cloud Native Java.

Today’s software development is all about the cloud, microservice, distributed architecture, etc. and this practical guide Josh Long and Kenny Bastani shows Java/JVM developers how to build better and faster Java applications using Spring Boot, Spring Cloud, and Cloud Foundry.

This is one of the must-read books for experienced Java programmers. Even though it handles an advanced topic, I strongly recommend this book to every Java developer.

If you want, you can also combine this book with the Master Microservices with Spring Boot and Spring Cloud by Ranga Karnam, a fellow blogger and Udemy best seller. It’s a great course if you are looking for some practical knowledge.

3. Effective Java 3rd Edition

This has to be your first book to read in 2021 if you haven’t learned it already. The 3rd edition was long due, and it was released about time. The new edition also covers JDK 7, 8, and 9 features.

This was actually the best book for Java developers from Joshua Bloch, you will learn a lot about how to use Java programming language and their API properly.

It took me just a week or so to read this book, but I have found myself looking for new Items, particularly on Java Se 8 and Java 9 every now and then.

I learned about the Java Modularity by reading this book itself, and it also helped me to sort out a couple of misconceptions I had about Java 8 features.

Btw, if you are new to Java Programming then you can also combine this book with The Complete Java MasterClass course on Udemy. One of the most up-to-date course and covers new Java features from recent releases.

4. Modern Java Recipes

If you like recipe books, then this one is a good read. As the title says, it contains simple solutions to severe problems in Java 8 and 9.

You will learn about how to write code using Java 8 idioms using lambda expressions, method reference, and Stream API.

If you want to learn Java 8 and Java 9 by following somehow to do tutorials and examples, this is the perfect book to read. If you need resources then you can also check out my list of best online courses to learn Java 8 to Java 14, which is a collection of short courses to learn new Java features.

5. Java 9 Modularity

One of the highlights of Java 9 release was Java Modularity or Java Module, and this book provides the most comprehensive coverage to that topic.

When it comes to Java 9 Module, the Author Sanders Mak is an authority, I have attended some of his Java 9 courses like Java 9 Modules and What’s New in Java 9 on Pluralsight, I can safely say that you won’t be disappointed after investing your time and money on this book.

Btw, you would need Pluralsight membership to each these course which cost $29 per month or $299 per year. This subscription is full worth of your money as it provides access to more than 7000+ courses. Alternatively, you can also use their 10-day free pass to access these courses.

6. Core Java SE 9 for the Impatient (2nd Edition)

If you are in a hurry to learn Java, then this is the book I recommend to you. I am a big fan of Cay S. Horstmann’s writing and the amount of detail he covers.

Having read his other books on Java 8, Scala, and Core Java, I can say that you will also become his fan after reading this book.

It has been recently updated to cover Java SE 9 features, and if you want to learn Java 9, then this is the first book you should read in 2021. Btw, we are currently on Java 14 and so still a bit out-dated but it's really difficult for any book to keep up with Java’s six-month release cycle.

Hence, the best way to learn Java is to combine this book with a more up-to-date course like The Complete Java Masterclass by Tim Buchalaka on Udemy, which not only gives you some active and guided learning but also helps you to learn Java quickly.

7. Beginning Java 8 Language Features

Even though it’s been almost 4 years since Java SE 8 was first released, there are many Java developer who has yet to start with Java 8.

If you are one of them or someone who struggles to understand lambda expressions, Stream API, Optional, and other Java 8 enhancements, then you must read this book.

It’s a collection of 3 books and straightforwardly explains your Java 8 fundamentals. The other two books from this author cover the advanced topic from Java 8 perspective like JDBC, Swing, Java FX, and Java Networking APIs.

If you need a course, you can also checkout Learn Functional Programming in Java using Lambdas and Stream API by Ranga Rao Karnam on Udemy. It’s a great, hands-on course to learn functional programming in JAva.

8. Spring Microservices in Action

The software development world is increasingly moving towards Microservice architecture as it offers several benefits in terms of development, support, deployment, scalability, and reliability.

Thankfully Spring framework provides tools like Spring Boot and Spring Cloud, which can be used to write microservices in Java.

If you are keen on microservice development with the Spring framework, then this book is for you.

If you want, you can also combine this book with the Master Microservices with Spring Boot and Spring Cloud by Ranga Karnam, a fellow blogger and Udemy best seller. It’s a great course if you are looking for some practical knowledge.

9. Clean Architecture

This is one of the books I read last year and enjoyed it a lot. I am a big fan of Robert C. Martin or Include Bob, having read his Clean Code and Clean Coder book, and I must say that this book completes the trilogy of the clean codebook.

This book will tell how to create software architecture which can stand the test of time and also remove misconception about design patterns and software architecture.

If you are an experienced Java developer and thinking of becoming a solution architect, then this is the one book that you should read in 2021. If you need courses, you can check out my earlier article about my favorite courses to learn Software Architecture.

10. Spring 5 Recipes: A Problem-Solution Approach

Spring 5 is the latest version of the popular Java application development framework, which introduced reactive programming features in Spring.

Since Spring is, without a doubt, the most popular framework for Java development, it’s worth learning what’s new in Spring 5 and keeps yourself up-to-date.

I personally like Recipe books because of their task-based approach, and that’s why I chose this book among other Spring 5 books for learning.

It not just covers new features of Spring 5 but also all other enhancements done on earlier releases. In short, it teaches you how to code in Spring 5. And, if you need a course, combine this book with the Spring Framework 5: Beginner to Guru course by John Thomspon on Udemy. It’s a great course to learn Spring 5 in depth.

11. Kotlin in Action

It’s common for Java developers to learn other JVM languages like Scala, Groovy, and Closure to become PolyGlot programmers, and Kotlin is undoubtedly leading the pack at this moment.

In 2017, Google announced Kotlin as the official language for Android development in Google IO, and from then onwards, there is a lot of interest in learning Kotlin.

Though, more importantly, it offers productivity benefits, and it’s 100% Java. So, if you want to learn a JVM language in 2021, I would say, just learn Kotlin, and if you need a course to combine with this book for better learning, you can join The Complete Android Kotlin Developer Course on Udemy, one of the most in-depth and hands-on course to learn Kotlin.

12. Java: A Beginner’s Guide, Seventh Edition

This is another classic book to learn core Java from scratch. The 7th Edition of this book is out now, which is updated to cover Java SE 9.

If you want to start your programming career with Java in 2021, then you can read this book to learn modern Java.

This is more comprehensive than the second book on this list, which also covers Java 9 but it's hard to find a book that covers Java 14, the latest version of Java.

That’s why I suggest you join an online course to learn Java along with treading a book like this one. If you need a recommendation, check out Java Programming for Complete Beginners course on Udemy.

13. Spring Boot: Up and Running

This is a great book to learn Spring Boot and created by Mark Heckler, from VMware, the company behind Spring, guides you through Spring Boot’s architecture and approach, along with topics such as debugging, testing, and deployment. I

If you want to develop cloud-native Java or Kotlin applications with Spring Boot rapidly and effectively — using reactive programming, building APIs, and creating database access of all kinds — this book is for you. It’s still a work in progress but worth reading.

For a better learning experience, you can also combine this book with Eugen Paraschiv’s Learn Spring: The Certification Class, which is probably the best course to learn Spring 5 and Spring Boot 2 from scratch, in a guided, code-focused way

14. Reactive Spring

Reactive programming is the future of Sofware development and this seems to be another great book on learning Reactive programming using Spring.

This book will cover important concepts in reactive programming including project Reactor and the reactive streams specification, data access, web programming, RPC with protocols like RSocket, testing, and integration and composition, and more.

The book is now complete. I haven’ read it yet but going to read it soon and I am including here because Josh Long (Author) himself suggested this book.

You can buy this book on Amazon and its now available in Kindle format.

here is the link to buy this book Reactive Spring

15. Java By Comparison: Become a Java Craftsman in 70 Examples

This is another great book for Java programmers who really want to hone their Java skills and become a Java craftsman. This is not the book about syntax and semantics but how to do real-world things in a better way. If you want to become a professional Java developer which every company wants to hire, then this book is for you.

This book is written by Simon Harrer, @Jörg Lenhard, and Linus Dietz, some of the well-known names on Java and clean code circle. It’s not a surprise that the book is filled with clean code advice.

If you know, one of the best ways o improve your coding skill is to compare your code with an expert programmer but not everyone gets a chance to work with experts.

This book provides you that rare opportunity where you can compare your code with how a Java expert would write it and then learn from your mistakes and new discoveries.

This book provides hands-on advice to level up your coding style through small and understandable examples that compare flawed code to an improved example. In the process, you will learn handy tips and tricks, as well as common bugs an experienced Java programmer needs to know.

In short, one of the practical, hands-on, and well-explained book which every Java developer should read. If you like Effective Java then I think you will love this book as well.

16. The Ng-book — The Complete Book on Angular

This is not exactly a Java book but a book which is worth reading for Java developers, particularly full-stack Java developer who are using Angular and Javascript to build their frontend.

This book, also known as the Ng-Book, has been often referred to as the bible of Angular. If you are looking for a simple yet detailed guide to the world of Angular, then this is the book for you.

Plus, what is better than a book by the developers of the Framework themselves?

Authors and Contributors: Nate Murray Felipe Coury Ari Lerner Carlos Taborda Nic Raboy Burke Holland

Chapter one covers Writing Your First Angular 9 Application and chapter two covers Binding Data to Components and introduction to Typescript, Using Annotations and Types. It costs 79 dollars and you can either buy it on Amazon or their own site. They are also providing a free chapter, whose PDF you can download here.

If you want, you can also combine this book with the Angular — The Complete Guide course by Maximilian on Udemy, which also covers Angular 9 and a solid resource for anyone looking for active learning.

17. The Good Parts of AWS: Cutting Through the Clutter

This is another book that is not exactly a Java book but again worth reading for Java developers, particularly those who are working in AWS. Since Cloud is transforming the way Java application is developed it's essential for Java developers to learn about Cloud Computing platforms like AWS, Azure, and GCP, and it makes sense to learn AWS because its a market leader.

And, this is one of the best books to learn practical AWS you will find online. This book is created by Daniel Vassallo and Josh Pschorr, former Amazon engineers with 15 years of experience working on AWS.

This is not your typical AWS reference book. You won’t find most of the knowledge that’s shared here in the AWS docs. The goal here is to help you realize which AWS features you’d be foolish not to use — features that have passed the test of time by being at the backbone of most things on the Internet.

This is an available e-Book on Gumroad, if you like to read books then you can also check out The Good Parts of AWS eBook. There is a 20% discount available if you buy the book using the above link.

And, if you prefer learning from course, there is also an interactive course available on this book where you’ll learn a technique used to help make reliable technical choices without getting paralyzed in the face of so many options.

You’ll start by going through the most fundamental services AWS offers such as DynamoDB, S3, EC2. Each section breaks down how it’s used, the pros and cons, why you should (or shouldn’t) be using it, and more.

Here is the link to sign up for this course — The Good Parts of AWS: Cutting Through the Clutter

You can either buy this course or you can get and Educative membership to access this course. If you ask me, I suggest you get Educative Subscription which costs $17(50% discount now) monthly, completely worth it for a programmer and software engineers where continuous learning is required. Thanks to The Educative Team for this awesome course.

18. The Standout Developer

This is another book that is not exactly on Java but very useful for any Software developer including Java programmers. This book is created by Randall Kanna and its a Complete Guide For Developers on Job Hunting, Acing the Interview, and Landing the Job

If you’re tired of the endless job search and feeling like your resume isn’t being seen, this book will help you craft a great resume that stands out and get it seen by the companies you want.

Kanna has shared his story on how she got companies like Google, Facebook, and LinkedIn reaching out to me by creating an online presence.

If you are trying to land a high paying job in tech? Want companies reaching out to you then you should read this book.

Here is the link to buy this bookThe Standout Developer

19. Hacking with Spring Boot 2.3: Reactive Edition

If you are looking for a book to master the new version of Spring Boot and Reactive Programming then this book is for you. Created by Greg L. Turnquist this book comes as a fresh wave of reactive programming and will teach you key techniques to create a scalable Java application.

Here is the key thing you will learn in this book:

  • Web and Data access
  • Developer tools and test support
  • Operational features
  • Docker container
  • Bottleneck discovery with BlockHound
  • Messaging
  • Security

Written using Project Reactor, your apps will scale like never before.

Greg L. Turnquist is an authority when it comes to Spring Boot and Spring. He works on the Spring team as a principal developer at VMware. He is a committer to Spring HATEOAS, Spring Data, Spring Boot, R2DBC, and Spring Session for MongoDB. He also wrote Packt’s best-selling title, Learning Spring Boot 2.0 2nd Edition.

20. Getting Started with Java on Raspberry Pi

This book offers a different approach to learn Java by combining it with the Raspberry Pi and electronic components and is created by Frank Delporte

Besides short introductions to Java, JavaFX, and Maven, a lot of examples learn you to use and control LEDs, buttons, LCD and LED displays, sensors… and many more. Different frameworks and programs are explained with proof-of-concept Java applications using Pi4J, Spring, Mosquitto MQTT, H2, Arduino, etc.

If you are new to Java, you will learn the language bit by bit by following the examples. As an experienced Java programmer, you will learn how you can extend your knowledge and control the world around you with simple and inexpensive components.

The book is available as an ebook on Amazon and Leanpub, and paper book on Elektor.

If you prefer courses, Frank also has a course on Udemy — Use Java and Java FX on a Raspberry PI to learn more bout using Raspberry PI in Java.

21. Learning Java: An Introduction to Real-World Programming with Java

This is another book you can read to learn Moden Java. This book covers till Java SE 11 which is not bad.

The book is easy to read and authors Marc Loy, Patrick Niemeyer, and Daniel Leuck have done a wonderful job to introduce you to Java fundamental in fun, compelling, and realistic examples.

You will also learn about Java class libraries, programming techniques, and idioms — with an eye toward building real applications.

And, for better learning experience combine this book with a more up-to-date course like The Complete Java Masterclass by Tim Buchalaka on Udemy, which not only gives you some active and guided learning but also helps you to learn Java quickly.

That’s all about some of the interesting and useful books Java developers can read in 2021. To be honest, there is a lot to learn, even to keep yourself up-to-date with what happening in the Java world like Java 9 to Java 14, Spring 5, Microservices, Kotlin, etc. These books will not only provide you up-to-date knowledge but also improve your understanding of new features.

Other Java Articles You may like

Thanks for reading this article so far. If you like these books, then please share it with your friends and colleagues. If you have any suggestion or any book which you think Java developers should read in 2021, then please drop a note.

P. S. — If you are looking for some advanced courses to become a better Java developer, I also suggest you check out the Web Application and Software Architecture 101 course on Educative, one of the better courses to learn Modern Software Architecture.

P. P. S — Quick Update, Pluralsight free weekend 2021 is here and you can access all 7000+ Pluralsight courses and projects for FREE this weekend. Make this count and learn a new skill or level-up the existing one. Don’t miss this out, it’s only for this weekend. And here is the link again:


Medium’s largest Java publication, followed by 11500+ programmers. Follow to join our community.

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Start a blog

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store