Accessing and Updating Instances
Once you have accessed some instances by iterating an Extent
or executing a query, you can access
related instances by traversing references and iterating through
collections contained in the accessed instances. The JDO implementation
ensures that the related objects are instantiated and read from the
datastore. All classes that can access a field—based on its access
modifier (public
, private
, etc.)—can directly access and modify
the field, just as they would if the application were not running in a
JDO environment.
The following program accesses a specific Movie
instance and determines how many DVD
copies of the Movie
are currently
available for rent. It accesses a specific Movie
instance and then navigates to related
instances. Line [1] accesses the
Movie
, based on its title. Appendix E contains the implementation
of the StoreQueries
class. Line
[2] accesses the set of associated
MediaItem
instances. We access each
MediaItem
instance on line [3] and determine if it is a DVD format on line
[4]. If so, line [5] accesses its set of associated RentalItem
instances. We acquire a reference
to each RentalItem
instance on line
[6]. On line [7], we determine whether the RentalItem
is currently being rented. If it is
currently rented to a customer, the value of rental
will not be null
. If rental
is null
, then it should be in stock and available
for rent. In this case, we increment the dvdRentalsInStock
counter. Once all the instances have been accessed, we ...
Get Java Data Objects now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.