Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs
Database Programming with JDBC and Java is the smallest and least expensive book in this month's line-up, but it aims higher than all the rest. In fact, a much more accurate title for this book would have been "Three-Tiered Distributed Java Database Application Development with JDBC and RMI." The bulk of the book revolves around a single, large, and complex example: A three-tiered banking application. Most authors pack their books with half a dozen medium-size examples for a better chance of satisfying more readers. George Reese gambles everything on his one, and unfortunately, his high-risk strategy will not pay off for most readers. The sheer complexity of the banking application, and the number of chapters it is spread across (most of the book), is such that most readers will find this book a struggle to exploit. Indeed, in terms of learning curve, this book resembles a steep mountain that leads to a high plateau. If you fail to follow the author up the mountain, you'll never see the plateau where all the real action is.
Concretely, the author employs state-of-the-art software techniques to put together his banking application, relying on a choreographed mix of modularity, cleverly deployed design patterns, strong decoupling, multithreading, transaction management, object locking and persistence, and distributed objects. Reese also explains all about JDBC, en passant. All this packed into a mere 167 pages. The remainder of the book (roughly 60 pages) is allocated to the index and a JDBC and RMI reference (although for RMI, there is only a partial reference). It goes without saying that with so little maneuvering room, explanations are kept brief. While an entire JDBC summary and tutorial can be compressed into a small space (simply because of JDBC's inherent simplicity), RMI's complexity requires more than the claustrophobic few pages Reese allows. Worse, the chronic lack of room seriously undermines the critical explanations behind the banking application's subtly interconnected sub-systems. A lot of the code is necessarily left unexplained while Reese concentrates on explaining the top-level essence of his featured application (the approach being very reminiscent of O'Reilly's original Java hit: Java in a Nutshell). Thankfully the code is of professional quality: thoroughly (and well) commented, consistently laid out, and readable.