Java and databases make a powerful combination. Getting the two sides to work together, however, takes some effort--largely because Java deals in objects while most databases do not.This book describes the standard Java interfaces that make portable object-oriented access to relational databases possible and offers a robust model for writing applications that are easy to maintain. It introduces the JDBC and RMI packages and uses them to develop three-tier applications (applications divided into a user interface, an object-oriented logic component, and an information store). This book is the key to becoming a more effective application developer for Java database programs. It includes reference listings for JDBC and the most important RMI classes and covers Java 1.1.The book begins with a quick overview of SQL for developers who may be asked to handle a database for the first time. It then explains how to issue database queries and updates through SQL and JDBC. It also covers the use of stored procedures and other measures to improve efficiency, where these are available.But the book's key contribution is a set of patterns that separate the various functions of the Java application and facilitate the growth and maintenance of an application. Patterns allow isolation of critical tasks like object creation, information storage and retrieval, and the committing or aborting of transactions. The book also introduces RMI as a way to distribute objects among systems. All techniques are illustrated with working examples.