Caching
SQL Query (if needed)
OO Query
Results(s)
NO – Build
bean/object from
results
Does PK for row exist
in cache?
Return object
results
YES – Get from
Cache