Customer Reviews: Java Data Objects
Amazon Vehicles Oct16 Amazon Fashion nav_sap_plcc_ascpsc Electronics Holiday Gift Guide Starting at $39.99 Subscribe & Save Cozy Knits Book 2 or More Hours of House Cleaning on Amazon GoodGirlsRevolt GoodGirlsRevolt GoodGirlsRevolt  All-New Echo Dot Starting at $89.99 All-New Kindle Oasis Shop Now

Customer Reviews

3.1 out of 5 stars
Format: Paperback|Change
Price:$39.99+ Free shipping with Amazon Prime
Your rating(Clear)Rate this item

There was a problem filtering reviews right now. Please try again later.

on June 25, 2004
This book is definitely the best on java data objects! i have read the one from prentice hall and addison wesley`s. its true that the first code example doesnt work, what is a shame but if you overcome your frustration and have a look at the oreilly website you can fond the correct and again detailed information (and even reason) to get it done. short cut to the correctings is : [...] .
0Comment| 6 people found this helpful. Was this review helpful to you?YesNoReport abuse
on April 29, 2003
Java Data Objects by David Jordan and Craig Russell succeeds in giving a good introduction to JDO and providing a very good overview of the standard. The book covers all the relevant aspects of managing persistent Java objects, such as creating and deleting persistent objects, identity, queries, and transaction handling.
More importantly, the authors describe how to use JDO in practice, meaning how to use JDO to write a Java application that accesses persistent data transparently. There are lots of detailed, but easy to understand code examples explaining the concepts of JDO. I like the idea that the entire book uses a single application scenario. The source code is included in the appendix.
The descriptions do not depend on a particular JDO implementation. Instead, it focuses on how to write an application in a manner that is portable among different JDO implementations. Where necessary, it explains JDO's optional features and areas where JDO implementations may differ. JDO does not specify a standard for the mapping of persistent classes to specific datastores; but this is an important aspect of developing an application with JDO. There is a chapter about datastore mappings, with the focus on relational databases.
There are chapters about defining persistent classes, enhancing them, and setting up the JDO runtime environment. It is easy to transfer the provided examples to your own application environment. I like the chapter on JDOQL; it provides a good and in-depth description of the JDO query language. There are extra chapters about the identity and lifecycle of persistent instances, as well as nontransactional access of persistent data. The last two chapters describe how JDO integrates into web- and application-server environment, especially J2EE application servers.
0Comment| 9 people found this helpful. Was this review helpful to you?YesNoReport abuse
on May 5, 2003
Craig Russell, at Sun Microsystems, is the specification lead for JDO and David Jordan, at Object Identity, has been an active member of the JDO expert group since its inception.
Java Data Objects provides a thorough coverage of JDO and explains how it can be used in various architectures. The reader is expected to be familiar with Java but needs only a limited knowledge of databases. In brief, Java Data Objects (JDO) insulates you from needing to know a lot about databases. JDO permits you to develop applications using your preferred Java object-oriented model, without you having to write code to translate between Java objects and how the data is stored in the database--JDO takes care of all of that for you.
The first three chapters provide a high level overview of JDO by walking through a small application, exploring each of its interfaces at a high level, and introducing the architectures it might be used in. Even if you have been away from code for a while you will be able to follow most of the code example. You can stop here if you just want to understand what JDO is all about and where it can be used. These are recommended reading for a manager.
Chapters 4 through 9 are required reading if you want to start developing JDO applications. They really get you into JDO, so you can understand it and start using it. The first three of these cover how to define persistent classes and fields, how they can be mapped to various databases (done for you) and the class enhancement process (which makes a lot of JDO transparent to you). The next three (chapter 7 through 9) bring home the power of JDO. These cover how to connect with a database, establish a transaction context and create, read, query, update and delete database objects. The material is made concrete by illustrating it with a detailed and intuitive example application. This example is carried throughout the book with sections of it explained as the concepts are covered.
Each remaining chapter covers a different JDO concept or feature (including optional features) that were introduced earlier but not covered in detail to keep the earlier chapters more understandable. These remaining topics are identity, lifecycle states & transitions, field management, cache management, nontransactional access and optimistic transactions. You can read these chapters as you feel the need for a more in-depth understanding of these concepts.
The last two chapters explain how to use JDO in an application-server environment and an Enterprise Java Beans environment. These two chapters assume you are already familiar with these environments, but I think a lot of it is understandable even if you are not.
There are five appendices with everything from the lifecycle state transitions to the collected source code for many of the classes used in the example application.
0Comment| 5 people found this helpful. Was this review helpful to you?YesNoReport abuse
on November 19, 2004
I was expecting something better from the JSR lead for JDO.

Before you buy this book, go to oreilly website for this book and go through the Chapter 1 available online. That chapter could have been fit in half as many pages without loss of information.

Now refer to the errata and README available on the oreilly website, download the JDO reference implementation and see if you can run the examples.

The examples don't work even if you follow the directions from the errata and README.

By now you would have wasted a few valuable hours.

If the Chapter 1 "An Initial Tour" is a waste of time, there is no reason to expect something better in the rest of the book.

So the books sucks, but you want to learn JDO! What can you do?

Download an evaluation edition of Kodo JDO from Solarmetric. Install it and you will get a JDO Developers Guide. Go through that. It is significantly better than this book. While you are at it, you can play with Kodo and get a feel for a real implementation of JDO, rather than Sun's reference implementation.
0Comment| 10 people found this helpful. Was this review helpful to you?YesNoReport abuse
on September 4, 2003
This is a solid and very readable treatment of the JDO specification. The authors are well qualified: Craig Russell was the specification lead and David Jordan a key contributor to the expert group. They have both been involved in persistence for many years. Craig Russell is one of the authors of the JDO implementation used in the SunONE application server to implement EJB CMP.
The first chapter helps to get the user started with the JDO reference implementation. In just 27 pages all the basic persistence operations are covered in the context of a simple demo application. This chapter provides enough information to get started with JDO on a project. However I would recommend using an evaluation download of one of the commercial JDO implementations or an open source JDO implementation instead of the reference implementation. The reference implementation uses a file system store and most users will want to use JDO with a relational database.
Chapter 2 covers the JDO API with a short informative description of each class and interface. Chapter 3 describes different JDO architectures. This chapter is missing the "remote persistence manager" architecture supported by some JDO implementations (JDO Genie and Object Frontier). Otherwise it is complete and has very clear diagrams. Chapter 4 covers the definition of JDO meta data.
Chapter 5 covers Object / Relational mapping with JDO. The JDO specification does not define any mappings (relational database mapping will be in JDO 2.0 as JDO/R) however most JDO implementations work with relational databases. The information is applicable to all O/R mapping JDO implementations as they all map in very similar ways. Forward engineering (write classes first), reverse engineering (generate classes from tables) and bridge mapping (write classes and design tables and map them together) are well explained.
Chapter 6 explains how JDO byte code enhancement works. Chapter 9 is a detailed explanation of the JDO query language (JDOQL). Chapter 10 covers the different types of identity supported by JDO. Tricky topics such as compound primary keys including references to other classes are very clearly explained.
The chapter titled "Web Server Environment" (16) is a bit thin on some details. For example it does not discuss giving the view (e.g. JSP pages) managed JDO instances to render. This is a very useful technique available to web applications and should have been covered.
The balance of the chapters cover more advanced topics such as state transitions, local cache management, transactions, J2EE integration, field management, non-transactional access and optimistic transactions.
This book succeeds in making JDO easy to understand and learn by deferring detail on complex topics to later chapters. Advanced users can read the whole book for a comprehensive understanding of the specification. I strongly recommend this book for anyone who is using or thinking about using JDO.
0Comment|Was this review helpful to you?YesNoReport abuse
on February 7, 2004
Good books don't get discounted by 60%, because items that sell well charge a premium in our capitalistic culture.
This book is unorganized. Lacks clear and cohesive sentence structure that leads to understanding. It is a step above the Enzio book, but that isn't really saying much. The code examples do run, check errata, and for some reason it is easier to read the code than a paragraph from this author. Go figure?
A true nightmare, and don't be fooled by the gratuitous stars from the author's friends.
0Comment| 5 people found this helpful. Was this review helpful to you?YesNoReport abuse
VINE VOICEon January 17, 2004
Java Data Objects is simple and straightforward, and solves a real
problem in an elegant way. Conveniently, this also serves as a
description of this enjoyable book from some of the key members of the
JDO specification team.
If you don't know, JDO is a recently standardized API for transparent
object persistence. A standalone reference implementation is
available, as are quite a few commercial and open-source versions that
piggyback on relational databases and other storage solutions. JDO's
popularity is growing rapidly because of its simplicity, ease of use,
and scalability. "Java Data Objects" is a timely and practical
treatment of this new API.
After a clear and accessible overview, this book first presents JDO in
a tutorial style using a simple but nontrivial example
application. Later chapters fill in the details where needed: for
instance, a whole chapter is dedicated to the difficult topic of
object identity.
The motivations behind JDO's development are explained well, and
comparisons to other object-persistence solutions, including EJB
container-managed persistence, are fair and balanced. One of this
book's few flaws is that despite the authors' important roles on the
standards committee, the rationale behind some of JDO's more puzzling
properties are left unexplained. In particular, JDO requires that only
a small subset of the standard Collections be supported by a JDO
implementation, but this book doesn't explain how this subset was
All in all, an excellent tutorial and reference that will have you up
and running with JDO in no time at all.
0Comment| One person found this helpful. Was this review helpful to you?YesNoReport abuse
on August 12, 2003
Chapter 1 of this book is available at Oreilly site. Try to make the first example work before you buy the book.
0Comment| 4 people found this helpful. Was this review helpful to you?YesNoReport abuse
on August 11, 2003
Since the first chapter is freely available at Amazon, try to run the first example. Buy the book if you succeed without too much trouble.
I have been always buy Java books from Oreilly. This one is really an exception.
0Comment| 2 people found this helpful. Was this review helpful to you?YesNoReport abuse
on November 17, 2003
Maybe the rest of the book is Ok, or maybe not. I just tried to run the examples of the first chapter and it was impossible for me.
0Comment| 2 people found this helpful. Was this review helpful to you?YesNoReport abuse

Need customer service? Click here