Monday, February 10, 2020

Top 5 Books to Learn Spring framework and Spring MVC for Java Programmers

Spring and Spring MVC is one of the most popular Java frameworks, and most of the new Java projects use Spring these days. Java programmer often asks questions like which books are good to learn Spring MVC or What is the best book to learn Spring framework etc. Actually, there are many books to learn Spring and Spring MVC, but only certain books can be considered good because of their content, examples, or the way they explained the concept involved in the Spring framework. Similar to  Top 5 books on Java programming, we will some good books on Spring in this article, which not only help beginners to start with Spring but also teaches some best practices.
To learn a new technology or a new framework, probably the best way is to start looking for documentation provided, and Spring Framework is no short on this. Spring offers excellent, detailed documentation to use various features of the Spring framework, but despite that, nothing can replace a good book.

Luckily both Spring and Spring MVC got a couple of good titles which not only explain concepts like Dependency Injection and Inversion of Control, which is core to spring framework but also gives coverage to another essential aspect of Spring. The following are some of the good books available on Spring and Spring MVC, which can help you to learn Spring.

Java Developers also often learn Spring and Hibernate together because of the massive demand of Java Web developers with Hibernate and Spring in their CV. So, if you are looking for some great books to learn Hibernate along with Spring, then you can also check out my post 5 Great Books to Learn Hibernate.




Top 5 Books on Spring Framework and Spring MVC

Here is my list of top 5 good books to learn Spring MVC and Spring framework. Let me know if you come across any other great book in Spring, which is worth adding to this list.


Lots of my readers suggested  Spring in Action from Manning as one of the best books to learn Spring. It seems like a worth reading book. I have seen it's content briefly, and it does cover both Spring and Spring MVC.

So if you are looking for a popular book to learn both Spring MVC for web development and Spring core for using Spring framework as DI and IOC container in core Java application, then Spring in Action is definitely the right choice.

For quicker and better learning, you can also combine this book with the Spring Framework 5: Beginner to Guru course which helps you with the initial setup and provide more active learning. 

Best Book to learn Spring in Java




Expert Spring MVC and Web Flow by Seth Ladd, Darren Davison, Steven Devijver, Colin Yates is one of my favorite books on Spring MVC and arguably one of the best books in Spring MVC. It covers both Spring MVC and web flow in-depth and explains each concept with a simple explanation.

I highly recommend this book to any beginner who is learning the Spring MVC framework. Their chapter on Spring fundamentals is also one of the best ways to learn dependency injection and inversion of control in Spring, and I myself learned DI and IOC from that chapter.

This is the Spring book I recommend to any Java web developer who is familiar with Java web technology or any MVC framework like Struts. Also, in my opinion, their chapter on Spring Fundamentals is one of the best ways to start with the Spring framework.

The only missing point is that this book only covers Spring MVC and web flow and does not cover the whole Spring framework. If you want a comprehensive guide then you can also join Spring Master Class - Beginner to Expert course along with this book to learn both Spring MVC and Spring Core in depth. This course is a perfect companion to this book as it covers areas that are not covered in the book.


Good books to learn Spring MVC




This is another good book on Spring Framework, which I like most. This book is a collection of Spring recipes or How to do it in Spring Framework. In every Spring recipe, you learn some new concepts, and it also helps to learn Spring fundamental, like their recipes, help me to learn when to use ApplicationContext and BeanFactory and  Constructor vs. Setter Injection.

A key highlight of this book is, It’s a problem solution approach. Since it’s teaching style is different than any popular book, it’s a good supplement along with Spring documentation. These books also provide excellent coverage of many spring technologies, like Spring Security, Spring BootMicroservices, Spring JDBC, Spring and EJB, JMX, Email, and have a chapter on scripting as well.

If you like books on the problem-solution approach, then you will enjoy reading Spring Recipes, not the best book in Spring but still a good one and will definitely make any list of top 10 books on Spring framework.




The main highlight of this book is that one of its authors is Rod Johnson, who has also created the Spring framework. So you get his view on Spring and How Spring should be used, what are best practices to follow in Spring, like When to use Setter Injection and Constructor Injection.

This book provides good coverage of the Spring framework, including Spring-core, Spring MVC, Spring ORM support, etc. Also, examples in this book are easy to understand, and it also focuses on Unit tests which are good practice.

Though I don’t rate this book too high as if your focus is Spring MVC than Expert Spring MVC and Web flow is the best Spring book to follow. If you are looking for an overview of Spring features, then Spring Documentation is the best book to read.

As I said, the positive point of this book is knowing Spring from author Rod Johnson himself. Once you have basic knowledge of the Spring framework, you can read this book to get the authors to view.

Must read Spring Framework book for Java developers


Pro Spring is one of the best books to learn Spring Framework from the start. This book is massive and tries to cover most of the Spring concept, like Spring fundamentals, JDBC Support, Transaction support, Spring AOP, Spring Web MVC, Spring Testing, etc.

Good point about this book is that it’s conventional and easy to read, it explains the concept, followed with a good example, which is a good way to learn. What is worrying is sheer size; I haven’t completed this book to date and only refer to some topic.

The good point is that this book covers Spring 5.0, which is the latest stable version. As I said, this is one of the most comprehensive books on Spring framework, and anyone who wants to learn Spring framework by following just one book, Pro Spring 5.0 is a good choice.





6. Spring Documentation

Spring framework documentation is located on the SpringSource website, here is the link for Spring documentation for Spring framework 3.1 in HTML format https://spring.io/docs Though this is not a book, Spring tutorials, and Spring documentation is another two sources of learning Spring framework, which I highly recommend.

The main reason for that is they are free and highly comprehensive and has a lot of examples to support various concept and feature. Also, one of the best parts of reference documentation is that they are updated with the latest Spring release available.

Updating books with every new version of Spring is somewhat tricky than updating documentation. Spring documentation combines with any Spring book is the best way to learn Spring framework. For learning Spring MVC, you can connect Spring documentation with earlier spring book, Expert Spring MVC and Web Flow and Spring Framework 5: Beginner to Guru courses for practical, hands-on learning. 

best books to learn Spring Framework



These are some of the best books to learn Spring framework and Spring MVC. Spring documentation is unique because of updates and new releases of Spring Framework. Given the popularity of the Spring Framework for new Java development work, every Java developer should make an effort to learn the Spring framework. 


Other Recommend Books and Courses  for Java Programmers
  • Spring Fundamentals By Bryan Hansen (course)
  • The Complete Java Developer RoadMap (guide)
  • Top 10 Spring Boot Courses for Java Developers (courses)
  • 5 Great Books to Learn Hibernate for Java Developers (see here)
  • Introduction to Spring MVC 4 By Bryan Hansen (see)
  • 10 Books Every Programmer Should Read (read more)
  • Top 5 Data Structure and Algorithm Books - Best of a lot, Must read (see here)
  • 5 Great Books to Learn Java 8 in Quick time (see here)
  • 10 Great books to Learn Programming Algorithms  (read more)
  • 11 Great FREE Java Programming Books PDF (download)
  • Top 5 Courses to learn Spring Cloud (courses)
  • Top 5 Courses to learn Spring Framework in-depth (courses)
  • 5 Spring Framework Books Experienced Programmer should Read (books)

P.S. - If you want to learn how to develop RESTful Web Service using Spring MVC in-depth, I suggest you join the REST with Spring certification class by Eugen Paraschiv. One of the best courses to learn REST with Spring MVC. 

18 comments :

Jiri Pinkas said...

How about Spring in Action?

SARAL SAXENA said...

Hi Javin,

Thanks a lot for sharing useful books information, but I would like to share for quick rap up , please see the following url..http://www.mkyong.com/tutorials/spring-mvc-tutorials/

Unknown said...

where i can find the books list i am unable to see

Anonymous said...

Spring in Action is also good.

Fahim Farook said...

Can you suggest a spring book which covers concepts in-depth rather than syntax.
i.e. I want to know how namespaces work/ the concept behind namespaces, best practices for authenticating users etc.

Anonymous said...

I thought Spring in Action will take 1st place!!!

Anonymous said...

How about "Spring in Action" by Manning?

Ch!rag said...

Hi,

Great article about Spring.

I think one more book "Spring in Action" can be added to this perfect list.

http://www.springsource.org/node/54

Regards,
Chirag

Javin @ xml interview questions said...

Thanks for your comments guys, As I can see, lot of you have suggested Spring in Action, another great book to add into this list.

Gray said...

I think Expert Spring MVC and Web Flow is a fantastic book. I learnt a lot about Java, the Spring Framework and development in general.

Anonymous said...

Best book in Spring is it's documentation. It contains accurate, updated and comprehensive information about everything on Spring framework. Most of the book only cover either few topics or few modules but documentation covers everything.

A divine thought said...

I didn't find Spring in Action pretty much fascinating since I am a beginner. This book covers more of a theortical approach.

enoughTheory said...

I read book “Learning Spring Application Development”… And i am blessed to have a book which helps me in understanding the Spring framework after executing all concepts and able to develop SAAS application.

Thanks to Author of this for this wounder content in this book “Learning Spring Application Development”.

Unknown said...

Hi Guys,

Expert Spring MVC and Web Flow covers Spring2, can any one tell me which is best book for latest version of Spring ie Spring 4

Anonymous said...

is spring in action still relevant to learn Spring framework, given current version of Spring is 4.2 and its mostly annotation based spring configuration in place rather than xml based configuration?

santosh said...

helo... spring controller is thread safe or not?? can you help me out with answer..

javin paul said...

Hello Santosh, the Spring MVC controller i.e. org.springframework.web.servlet.mvc.Controller thread-safety depends upon the implementation, ut interface clearly says that the implementation of the Controller interface should be a reusable and thread-safe class. So that it can handle multiple HTTP requests throughout the lifecycle of an application. It means, if your Controller is not thread-safe you will bound to see race condition and multi-threading issues when multiple HTTP request will hit your application at same time.

santosh said...

means its threadsafe???

Post a Comment