This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
Author/s : Andrew Lee Rubinger, Bill Burke
Publisher : O'Reilly Media
Category : Enterprise JavaBeans Review by : Jaikiran Pai
Rating : 8 horseshoes
Before getting into the review of this book, I would first of all apologize to both the JavaRanch book review team as well as the publishers of this book. They provided me a copy of this book for review, long time back, but until this weekend I never was able to find the time to finish reviewing this book, due to my other commitments.
Moving on to the book review.
"Enterprise JavaBeans 3.1 (6th edition)", attempts to explain the various services provided by EJB3 and how those services can be applied in real world practical applications. The book does a very good job in covering these features and at the same time not overwhelming the readers with the information.
The first few chapters steadily build up the EJB3 concepts and how they be applied in real world applications. The good thing about these chapters is that they do not expose the readers to any code. Once the concepts have been introduced to the users, the next few chapters of the book get into the details of various EJB types. This includes session beans and message driven beans. Each of these chapters first explain the bean type in detail and its usage before getting into an example for that bean type.
Once that's covered, the book then moves onto explaining how an application can use the persistence service API (JPA) along with EJB3. This part is divided into multiple chapters and these chapter cover various details right from explaining what Java Persistence API provides to mapping your database tables to the corresponding Java entities. It further goes on to explain the usage of the query API made available by the JPA spec.
The latter part of the book covers various EJB3 container services like security, transaction, timerservice and dependency injection with EJB3 components (and other server side components in general). The book also has some chapters on using your EJB3 beans as WebService endpoints.
Overall, the author does a very good job in covering the entire set of EJB3 features in a very articulate manner. The author stresses more on the concepts and their applicability rather than forcing some code onto the readers. The book does have an entire last section dedicated to examples and code.
A couple of places which I thought could be improved are:
- Ordering of some of the chapters in the book. Part 3 of the book goes into the details of persistence (JPA usage) and for a few chapters you feel that you are reading a book on Java Persistence, rather than Enterprise Java Beans. In my opinion, Part 4 of the book which covers various core EJB3 container services (like transactions, security etc...) should have been switched with Part 3.
- The chapter on MDB, in my opinion, gets a bit too lengthy and perhaps could have to been shortened a bit.
Other than that, I found the book to be very good and a valuable read.
P.S: Although I know the the author of the book personally and we work for the same company and the same team, I've tried to keep this review unbiased.
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.