Hi,
Maybe the best example is to look at UserPersistenceImpl.java.
If you look at findByContactId(), it looks like it is caching the results:
1 if (retrieveFromCache) {
2 result = FinderCacheUtil.getResult(FINDER_PATH_FETCH_BY_CONTACTID,
3 finderArgs, this);
4 }
5
6 if (result == null) {
7 ...
8 cacheResult(user);
9
10 if ((user.getContactId() != contactId)) {
11 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_CONTACTID,
12 finderArgs, user);
13 }
And you look at .updateImpl()
1
2 FinderCacheUtil.clearCache(FINDER_CLASS_NAME_LIST);
3
4 ...
5
6 if (isNew ||
7 (user.getContactId() != userModelImpl.getOriginalContactId())) {
8 FinderCacheUtil.putResult(FINDER_PATH_FETCH_BY_CONTACTID,
9 new Object[] { Long.valueOf(user.getContactId()) }, user);
10 }