

Spring in Action, Fourth Edition: Covers Spring 4
W**C
Clear, Timely, Relevant, Concise ...
I read the 2nd edition a few years ago. Spring has evolved so much that the 4th edition is mostly new content.This is a great book and goes far beyond the great documentation that the spring team already provides. I thought the price was a little high, but can't complain about the value. This earned all five stars.To use an analogy, The Spring documentation tells you what "legos" are available. Craig Walls teaches you how to put them together to build a solid structure.
A**S
Great book, might not be for beginners
I'm half-way through the book, I must say it is such an enjoyable read! The contents are explained clearly, and the writing style is crisp!A warning though: you probably need to be at least an intermediate level Java programmer AS WELL AS already having some basic knowledge of Spring and related frameworks to fully appreciate the book. In other words, if you know nothing about Spring yet, this book probably is not the best for you.
M**T
Reccomeneded
I am upgrading my review as I get further into the book. I have just finished chapter 6. From a standpoint of explanation of Spring and how to use Spring this edition (and edition three) is pretty good, probably as good, or better, than any other Spring book I've read, and I've read quite a few now. My main complaint to the third edition was that the code was not in very good shape. Much of it would not even compile let alone run and I gave up on trying to fix the multitude of errors. There was a paradigm shift from Maven to Gradle. This does not seem to be too much of a problem so far, things have been fairly easy to figure out. I got things running fairly quickly with a crash course in Gradle online.I just finished the book. I have upgraded my review to four stars. Actually, I would rate it at 4.5 stars, but there are no fractional stars. I did find three projects out of 19 that would not run (as downloaded), and a fourth project for which one part would not run. Of the three that would not run, I was able to get two to run after much research. In one case it was a missing dependency, in another a configuration issue and in the third it was both configuration and some missing code that had to be added. You can see these issues in detail on the books website at https://forums.manning.com/forums/spring-in-action-fourth-edition.What I like about this book is it is well written and fairly easy to follow. It does not burden you with too much internal detail of how Spring works; the book is oriented more in getting code to run. Also, many of the projects are simple web applications and the author has kept them well focused by not adding a bunch of superfluous code aimed at making the applications "pretty". While the apps are fairly simple in appearance, this lends toward better understanding as you don't have a lot of unnecessary code to sift through to see what is going on. Despite this being the 7th Spring book I have read (including volume 3), I have learned many new things and some things I already covered were clarified. I would not say this book is for someone brand new to Spring. The book does not cover the mapping java classes to database tables with annotations at a fundamental level. You may have some difficulty in this area. A good introduction would be Ho's book, chapters 9 and 10, or Spring Persistence with Hibernate by Tepper, Fisher and Murphy, though these are not quick reads.The reasons I have not given this book 5 stars are follows: 1) While the author has put a lot of work into revamping the code base there are still some problems with the code. 2) The author does not always give instructions on how to run/test the code. Most of the time it is pretty obvious, but there were a few cases where it was not. A couple of projects had readme files indicating how to test/run the projects. They could have all used this. 3) There was little discussion on dependencies. This is a complaint I have with many books. This is one of the things I liked about Clarence Ho's book, he brought dependencies in one by one and discussed them listing the exact name of the required jar file. 4) There was no discussion on transactions, despite an entire chapter on using Hibernate and JPA. If I had not known about transactions already, I would have been very confused at the use of the TransactionManager. 5) There was no discussion on the usage of exclude filters with Java configuration. It was up to me to research what was going on. 6) There are differences between the code listings in the book and the corresponding source download. These differences are usually not explained. 7) Imports and dependencies are not always identified. This is an issue I have with many books. Sometimes it is very time consuming to find the exact name of a dependency/import. 8) The chapters on back-end database access should have had an example tying into an actual database like MySql instead of always using the in memory H2 database. 9) I would like to have seen the exact names of the libraries required for the message converters in chapter 16. There is a table that lists the names of the converters, but you don't know the name of the corresponding dependency for the converter, except for the case used in the example code. Table 16.1 lists the available Spring message converters, this table should have listed the names of the relevant jar files for all the converters. 10) Most of the projects are configured in Java. The author sometimes gives equivalent XML configuration files, but not always. This is inconsistent. Also, in the chapter on STOMP, there is only XML configuration, but the author does not mention if this is because STOMP can only be configured in XML (as is the case with Web Flow). 11) The chapter on email, 19, should have included a brief discussion on what GreenMailBean is. It is introduced in the code with no explanation, you have to figure it out yourself. 12) The code for chapter 19 should have included Velocity and Thymeleaf construction of the email message. This is only described, the devil is in the details. 13) The code for chapter 19 should have included an example of using an external email server such as gmail. I had a previous project that did this and was able to get it to work with the book's code. 14) Chapters 4, 5, and 20 have no associated code examples in the download, they could use some. 15) The code could have used a lot more comments. Many of the above issues would have been solved by good comments. 16) The book covers Spring Security, but Security access control lists, covered in Volume 3, were dropped from this volume. 17) Security Authenticated users were always in-memory. It would have been nice to see an example of database-backed users/credentials. Again, the devil is in the details. 18) There is no coverage/discussion for encrypting password.19) The source code is built with Gradle. The book could have used some basic instructions on building and running with Gradle. I know this isn't a Gradle book, but the amount of primer material required would not be that much and would have saved a lot of frustration. 20) Would like to have seen the author spend a little more time talking about some of the software used in the projects like GreenMailBean used in chapter 16 or the embedded tomcat server used in chapter 21. At least a paragraph or two introducing it would have been nice. 21) I have not seen the author respond to any posts in the book's forum on the Manning website. Manning informed me they try to get the authors to respond to questions. I did get the author to respond to a couple tweets I sent him on issues with the code. He offered to help at one point, but I was able to solve that problem and he has not responded to subsequent tweets. I noticed that Walls has a book on Spring Boot coming out in October of '15, perhaps this is why hehas not found time to monitor the book's forum or respond to tweets.Don't be put off by this apparently long list of cons. This is still a very good book and I recommend it. Keep in mind it is much easier to list the cons for this book which is a MUCH shorter list than the pros.
B**B
Both of Craig Walls' Spring books are excellent. They use simple examples to make points and ...
Both of Craig Walls' Spring books are excellent. They use simple examples to make points and explain concepts without unnecessarily complicating the text with a complex example program (like so many other books do). Craig Walls knows how to explain things so that readers can actually learn, understand, and retain the subject matter. Both of his Spring books have been very helpful.
T**S
Patience
Can be a little confusing with how the structure of the book was written. Written in a top down approach.The first chapter might be confusing for first time spring developers, but power through it and you'll see the author starts with the hard way of doing things first, then eases you into the current/easier way of developing in Spring.
P**M
Good introduction
I got the 4th edition (covers up through Spring 4). A very good introduction; largely applicable both to the current version (Spring 5) as well as to earlier versions (e.g. Spring 3)
L**L
Not for those who want to lean spring
Complete Disappointment:After searching for weeks for a nice book for learning spring, I somehow decided to buy this one, mainly due to 100,000 copies being sold. I have completed two parts which covers spring core and spring AOP and I am appalled by the content. It is neither engaging nor comprehensive. I thanked myself since I have already covered these topics from YouTube, so was able to understand pretty much everything, otherwise the content is so obscure, that it is impossible for a beginner to learn spring using this book. Here are the top drawbacks based upon my experience.i.) You have to be 100% attentive to read this book, you lose your attention for 10 lines and you will not understand the whole section. Those who like Head First series will die trying to complete this bookii.) The book is not engaging at all.. Unless you are fresh in the morning after a 8 hour sleep, it is hard to read 5 pages at a stretch. One of the reviews posted on the back cover praises the writer for his humorous style, I am not sure, how much he got paid for saying so.iii.) Plenty of mistakes and they are not grammatical.iv.) eBook is partially in color telling us that even though publisher is charging people $47, it still is cutting costs by selling the book in black and white version, typical Manning.v.) Last but not the least: If you want to learn spring, this book is not for you.Advantages:i.) The book's coverage is vast, it covers nearly every aspect of spring, people often say, spring is vast, so is this book.ii.) If you a spring expert and want a book that can be referred for any spring related topic, you can buy this.iii.) You get an eBook for free with printed version, which is partially in color.
E**S
Well-written. Great resource.
Really like how the author explains concepts and you can tell he is trying to make it fun. Favors Java configuration over XML, but still includes references to XML. At my current job XML configuration is favored (even with Spring 3+) so that helped a lot.
Trustpilot
5 days ago
1 month ago