During my recent return to Javaland, I have noticed many improvements in newer releases of well established frameworks and toolkits, as well as many new ones. One such new release is version 2 of Spring framework. It is not really a hot news, because the final version of 2.0 is out for almost a year (October 2006), but it is new to me, because I spend pretty much all of last 12 months in DotNet, C# and OLAP worlds, with only brief visits to older Struts based, Spring-free Java projects.

Spring has an excellent documentation and great API comments, so after one gets over mental switch to IoC and AOP, there is not really strong need for reading anything else except source and documentation, bar saving some time. But because this books title - Building Spring 2 Enterprise applications - explicitly mentioned version 2 of the framework and because of Joel's intriquing remark on how Spring 2 configuration extensions reminds him of good old ATG Dynamo, I purchased PDF version of the book from the Apress.

I am not quite done with the book yet, but I like what I have read so far. The chapter on AOP is probably one of the clearest explanations of benefits and principles of aspect oriented programming and differences against object oriented design. If you have chaos in the pointcuts, advices, advisors, aspects and join points, the chapters 3 and 4 are alone worth of $25 spent on the ebook.

Chapters 5 and 6 are dealing with data access and cover in detail using Spring JDBC helpers and extensions, that allow write clean, condense database code without worrying about pooling, connection management, resource management and cleanup and exception handling. It does not cover the alternative methods such as ORM (Hibernate, JDO) or iBatis.

There is one major problem with the book, that hopefully will be fixed soon: the book asks you to download the source code for the sample from the Apress site - and the site does not provide any source download. I have contacted the Apress tech support and got response that the authors of the book did not provide the code yet.

Without the code, the coolest feature of the programming books - instant gratification from building and running sample and then enjoying the beauty of design and discovering "how did the do it" - is lost. Even if you had time and patience to type in the examples, you could not, because the book contains only subset of the code (and rightly so). So I can only hope that the authors - Seth Ladd or Bram Smeets - will get in touch with Apress and fix it soon ...

Update: as of Monday, Sept 24th, the source code is available for download.