Preface

Wow! As I write this, it’s been almost seven years since Spring 1.0 was released and Ryan Breidenbach and I started work on the first edition of Spring in Action. Back then, who would have guessed that Spring would transform Java development as much as it has?

In that first edition, Ryan and I tried to cover every corner of the Spring Framework. For the most part, we were successful. Back then the entire Spring story could easily be told in 11 chapters with dependency injection, AOP, persistence, transactions, Spring MVC, and Acegi Security as the main characters. Of course, back then that story had to be told with a lot of XML. (Does anybody remember what it was like declaring transactions with TransactionProxyFactoryBean?)

By the time I got around to writing the second edition, Spring had grown quite a bit. Again, I tried to squeeze everything I could into a single book. I found out it wasn’t possible. Spring had expanded well beyond what could be discussed in a 700- to 800-page book. In fact, entire, completely written chapters were cut out of the second edition because there wasn’t room.

More than three years and two major versions of Spring have passed since the second edition was printed. Spring covers more ground than ever before and it would take several volumes to comprehensively cover the entire Spring portfolio. It’s not possible to cram everything there is to know about Spring into a single book.

So I’m not going to even try.

Often books get thicker with each successive edition. But you’ve probably noticed by now that this third edition of Spring in Action has fewer pages than the second edition. That’s possible for a couple of reasons.

Since I couldn’t fit everything into one volume, I was choosy about what topics made it into this edition. I decided to focus on what I believe are the core Spring topics that most Spring developers should know. That’s not to say that the other topics aren’t important, but these are the essentials of Spring development.

The other reason this edition is smaller is due to the fact that while Spring’s reach has continued to expand, it has continued to become simpler with each release. Spring’s rich set of configuration namespaces, adoption of annotation-driven programming models, and application of sensible conventions and defaults have reduced Spring configuration from page upon page of XML down to only a handful of elements.

But make no mistake: though there are fewer pages, I’ve still managed to pack a lot of new Spring goodness into them. Along with the dependency injection, AOP, and declarative transactions Spring has long provided, here’s a sampling of the stuff you’ll learn in this edition that’s new or changed since the second edition:

  • Annotation-based bean wiring that dramatically reduces the amount of Spring XML configuration
  • A new expression language for evaluating values wired into bean properties dynamically at runtime
  • Spring’s all-new annotation-driven Spring MVC framework, which is far more flexible than the former hierarchical controller framework
  • Securing Spring applications with Spring Security, much simpler now with a new configuration namespace, convenient defaults, and support for expression-oriented security rules
  • First-class support for building and consuming REST resources, based on Spring MVC

Whether you’re new to Spring or a Spring veteran, I hope that you’ll find this book to be an indispensable guide as you use Spring in your projects.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset