Sebastopol, CA--Java Data Objects, or JDO, allows Java developers to manage data without any specialized knowledge of the underlying database software or database query languages. The idea behind JDO is to provide database persistence in Java in a way that is both convenient and natural for Java programmers. For instance, programmers don't need to learn SQL, don't need to tediously copy data into and out of Java objects using JDBC calls, and can use Java classes, fields, and references in a way that is natural--without a lot of extra method calls and coding. Programmers can even write queries using Java predicates instead of SQL. In short, they just write Java; the persistence part is automatic. Although JDO is relatively new, many development organizations have already discovered its simplicity and utility. Java Data Objects by David Jordan, a key contributor to JDO, and Craig Russell, the Specification Lead for JDO, (O'Reilly, US $39.95), is the definitive work on this important new Java API.
"Java Data Objects let a developer apply the object paradigm and focus on designing a single information model in the form of a Java object model, using all the object-oriented capabilities provided by the Java language," explains coauthor Jordan. "They can store these object models in a wide variety of databases with transactional access. They can use a query language that is based on their Java object model and uses Java operators and syntax. No other persistence technology provides this, including serialization, Java DataBase Connectivity (JDBC), and Enterprise JavaBeans Container Managed Persistence (EJB CMP).
"Applications can access and navigate to objects in the database without even having to make explicit calls to JDO interfaces," Jordan adds. "A JDO implementation gives the illusion that all the objects that the application needs are in memory. It brings them in from the database as needed, automatically marks them as updated, and assumes control of mapping all the updates to objects and their interrelationships back to the database. A major task of developing applications is the migration of data between its in-memory representation and its storage representation. With JDO this is no longer necessary. So it substantially reduces the costs of developing applications."
"Java Data Objects" provides a thorough introduction to JDO, starting with a simple application that demonstrates many of JDO's capabilities. The authors introduce JDO's interfaces, discuss class enhancement and JDO's optional features, and familiarize readers with JDO architectures. The next part of the book deals with object modeling, schema design, and aspects of the JDO development process.
Once the basics have been covered, the authors guide readers through the process of establishing a JDO runtime environment, which includes connecting to a datastore and issuing transactions. In subsequent chapters, they cover aspects of using JDO to store, access, and query instances in the datastore. More advanced chapters cover optional features such as nontransactional access and optimistic transactions. "Java Data Objects" concludes with a discussion of the use of JDO in web applications and J2EE environments.
JDO makes application development simpler and much faster, and "Java Data Objects" provides the most authoritative and complete coverage of this interesting new technology. This book is a must for enterprise developers using Java, or any Java developer who writes applications to access databases.
O’Reilly Media spreads the knowledge of innovators through its books, online services, magazines, and conferences. Since 1978, O’Reilly Media has been a chronicler and catalyst of cutting-edge development, homing in on the technology trends that really matter and spurring their adoption by amplifying “faint signals” from the alpha geeks who are creating the future. An active participant in the technology community, the company has a long history of advocacy, meme-making, and evangelism.