by Ed Roman, Scott W. Ambler, Tyler Jewell, and Floyd Marinescu|
John Wiley & Sons, 2001
Cover Price: US$45.00
In spring 1999 (that means September in Down Under), I was working as an architect at a Rational customer site and figured it was time for that organization to take its first steps into the big and scary land of J2EE.
How did we get started with the technology? Well, it was not just by reading the Enterprise Java Bean (EJB) 1.0 spec; no, our answer was the book Mastering Enterprise JavaBeans by Ed Roman et al. Despite the complexity of the subject, this book guided us safely through the first three months of our project. It is not only a great tutorial, but also a reference for more advanced topics -- and we gained a fairly in-depth understanding of J2EE in a reasonably short time.
Why Is This Book So Helpful?
First, it doesn't try to trick you. Ed Roman does not claim that working with EJBs is easy. Quite the contrary; he is up-front about the complexities involved in J2EE programming. He takes the reader through the J2EE Application Program Interface (API) step-by-step and provides examples to work through it systematically. This is the same approach he used in the first edition, which was an overwhelming success.
Another reason the book works so well is that it has a clearly defined focus. Like the first edition, which covered EJB up to version 1.1, the updated version for EJB 2.0 is definitely a middleware book and concentrates mainly on EJBs. Although it does not venture out to cover Java Server Pages or other presentation layer technologies, it does, however, introduce relevant technologies such as servlets and their interface to EJBs.
Also, much to their credit, the authors based this new edition on feedback from their readers. Brilliant! Drafts of all the chapters were available for public review on The Serverside Web site,1 so the entire Java community had an opportunity to contribute and shape the content. The new version is updated for EJB 2.0 and includes Message Driven Beans, EJB relationships, EJB Query Language, Local Interfaces, and other new topics. It also includes a few chapters written by Scott Ambler and Tyler Jewell from BEA Systems.
What Else Is in the New Edition?
Following a fairly comprehensive introduction to the J2EE architecture and its benefits, Ed Roman takes the reader through the steps of writing a first EJB, from Stateless to Stateful Session Beans, to Entity Beans and Message Driven Beans. This he does very well, presenting the information in small chunks; each chapter comes with an example/practice exercise that readers can build on their own Web servers.
Once the reader has mastered the basics, the book describes how to refine those skills and points out how EJBs can be used more efficiently. It also covers more advanced aspects of distributed computing with J2EE, including:
- Container-provided services
- EJB design strategies
- Persistence best practices
- Large-scale system design
Plus, it includes topics related to project management and infrastructure decisions:
- EJB project management
- Choosing an EJB server
And finally, the appendices provide in-depth coverage of the following areas of the EJB Specification:
- RMI-IIOP and JNDI
- CORBA interoperability
- Deployment descriptor reference
- EJB Query Language reference
- API and diagram reference
Something for All J2EE Levels
The book is certainly meaty enough to satisfy the advanced J2EE programmer but will greatly help all other people involved in J2EE projects. It explains the basic concepts behind middleware component architectures, touches on most aspects of the software development lifecycle, and covers best practices in relation to J2EE projects. It also captures some of the design patterns that have emerged within the J2EE framework.2
I hope this review inspires you to take a look at this most excellent volume. Enjoy the experience.
1 The first edition of Mastering Enterprise JavaBeans is completely downloadable from http://www.theserverside.com/resources/index.jsp.
2 For more complete coverage of these patterns, see Floyd Marinescu, EJB Design Patterns: Advanced Patterns, Processes, and Idioms. John Wiley & Sons, 2002. Also see http://www.theserverside.com/resources/patterns_review.jsp.