Ever since Java programmers have downloaded their first virtual machine, their ears have been glued to the
ground, constantly on the lookout for tips and tricks for using the latest Java APIs. After all, there's nothing
quite as satisfying as grasping a new technique for solving a common programming problem. Remember the
first time you learned the power of Model-View-Controller (MVC), or developed your first singleton class? It
was clear that someone out there had thought through the same problems you were having and, best of all,
developed a solution that worked....