Hi All !
I have passed today 1Z0-898 (
Java EE 6 Java Persistence API Developer Certified Expert Exam) with 91%
My study was as follows:
1. Read completely "Pro JPA 2: mastering the Java Persistence API" by Mike Keith, Merrick Schincariol. Pro JPA 2.0 is very well written, highly recommended.
2. Completed all four tests in
Enthuware's JPAD 6.
3. Read completely
JPA 2.0 specification. JPA 2.0 specification is a Bible for this exam - must read.
4. Read second time Pro JPA 2.0.
5. Completed again all four tests from JPAD 6.
Important: make sure you read all explanations from Enthuware's JPAD 6 - it has questions similar to ones you will get on the exam. All simulator's questions are relevant to the exam.
Some random tips for
test takers:
1. Persistence context lifecycle (transaction scoped vs extended)
2. Entity Manager types (container mananed vs application manaed)
3. Criteria queries typed/untyped (multiselect); subquery - how to get max value in subquery and compare with attribure in main query
4. PersistenceException subclasses! Which rollbacks whole transaction/rollback only current statement
5. Locking optimistic/pessimisic. Know by heart all LockModeType values.
6. Transaction attributes inheritance - single question,
EJB 3.1, section 13.3.7.1
7. Entity inheritance strategies (JOINED, SINGLE_TABLE)
8. Embeddables collections (@ElementCollection, @CollectionTable)
9. @Version and bulk updates - what possible problems might occure.
10. Second level caching: shared cache mode ENABLE_SELECTED (what will be cached and what will not be cached with different @Cacheable)
11. javax.persistence.Cache.evict(class) - what it does to subclasses
12. PersistenceUtil.isLoaded() for regular one-to-one relationship and one-to-one relationship with LAZY fetch type
13. Pessimistic lock - escalation from read to write when writing to DB.
14. JPQL functions SIZE(), COUNT() - make sure you know what they do and in what part of query they may be used
Good luck,
MZ