Book review: "Murach's Java Servlets and JSP"
The one quality that makes "Murach's Java Servlets and JSP"
(buy from Amazon
) a clear winner is the quality of the content and clarity of author Andrea Steelman and Joel Murach's writing. They use a friendly, humorous voice that eases the normal tension accompanying such a complex topic as programming Java servlets and designing JavaServer Pages. I'm a C# developer, so this was most appreciated by someone like me. You'll also be thankful for this tone as the book takes you through some very challenging scenarios in developing winning browser-based apps.
The book is the rare breed of tech manual that stays relevant to the neophyte reader and the experienced developer alike. It's outstanding as a college-level classroom reference, with oversized dimensions (it's a large book, height- and width-wise) are loaded with rich illustrations and healthy amounts of code with thorough explanations of the concepts behind then. Physically the book is ready to sustain the harsh conditions of the learning programmer. Its rigid design will survive a reader's rampant paging through chapters to find that one code sample and stretching the book's spine, in the classroom as well as the web shop.
The book presents the reader with the holistic JSP experience, and the organization of the chapters is very logical. I particularly enjoyed the chapters dealing with JavaMail programming, working in SSL environments, database access with JDBC and MySQL, working in the HTTP pipeline, custom JSP tags and use of XML. Also featured are basic discussions of incorporating componentization in your projects through JavaBeans. I also liked wrapping up my reading with the capstone project: designing, coding and deploying a very practical Music Store web app.
The accompanying CD-ROM is outstanding, including the Java 2 SDK for Windows, Tomcat 4.0, MySQL, and trial versions of HomeSite and TextPad.
In criticism, I felt the book to be ironically a little light on servlets themselves. I would have liked to see more on servlets and beans programming discussed, and perhaps highlight a bit more some of the key classes in the Java 2 API. The book also I feel neglects the object-oriented programming concepts that are so critical to modern-day development. Maybe such topics are out of this book's range, but simple class design would have been nice. However, the best-practices approach to development - use of patterns, proper system organization and implementing MVC architecture greatly offset the book's very minor shortcomings.
I fully recommend this book to anyone looking to get into beginning to intermediate JavaServer Pages programming. It's essential to becoming a well-versed Java programmer.