General
Design persistent classes
- Write code for getters, setters and constructor
- Identify correct implementation of equals() and hashcode()
- Describe the Primary Key mapping mechanism and needed syntax
- Explain mapping done using <id> element and @id annotation and corresponding relational structure
- Describe the following generator strategies : increment, identity, native, sequence.
- Name and explain the composite primary keys mapping strategies
- Explain The <composite-id> element and corresponding annotation
- Using an embedded composed primary key class
Write code that manipulates Configuration and SessionFactory objects
- Construct a Configuration object that initializes itself reading hibernate.properties, hibernate.cfg.xml
- Write a property-based and xml-based configuration file containing dialect and database connection information.
- Describe the semantics of the following methods : openSession(), close(), addClass()
Create persistent object model classes containing types
- Establish the difference between the lifecycle of an Entity and a Type
- Write mapping file or annotation code that maps an Embedded Component in a POJO
- Identify correct Value Type collection mapping using <set>, <list>, <bag> and <map>
- Describe how to map a Component collection
- Given a hibernate collection mapping (xml or annotations) validate a corresponding relational model
Entity Relationship
Explain entities relationships and describe corresponding table structure
- Describe Foreign Key mapping including
- simple reference <many-to-one>
- simple collection <one-to-many>, identify the following supported collection types <list>, <set>, <map>, <bag>
- bidirectional association and the meaning of the inverse attribute
- association table <many-to-many> mapping
- enhanced association Table, write code that use a composite-element to map an association table containing data
- Describe how to make hibernate constrain Foreign Key in one-to-one relationships
- Predict hibernate behaviour concerning cascading
- Identify the correct cascade attribute values and link them to the POJO lifecycle.
- Given code, establish what changes will be propagated to the database
- Troubleshoot performance problems using fetching and lazy loading principles (lazy & fetch attributes values)
Inheritance
For the following inheritance mapping strategies
- Table per subclass <joined-subclass/>
- Table per class hierarchy <discriminator/> <subclass/>
- Table per subclass with discriminator <discriminator/> <subclass/>
<join/>
- Table per concrete class
- Table per concrete class with UNION <union-subclass>
Be able to
- Explain pros and cons, basic knowledge of the different strategies and their differences
- Identify corresponding database structure
- Write code that establish a polymorphic association
Lifecycle
Be comfortable with hibernate lifecycle
- Identify entity States : persistent, transient, detached
- Describe State Transition API : clear(), close(), save(), saveOrUpdate(), persist(), evict(), merge(), contains(), delete() and update()
- Given code, identify when flushing is done.
- Explain the Dirty Checking mechanism
- describe and understand the basic principle
- establish how hibernate handles basic type and collection dirty checking
- Explain the purpose of the StatelessSession class
Object retrieval and Query
Given the following entity Fetching techniques
- Hibernate Query Language
- Write queries with basic syntax (from, select, where), sorting, aggregate functions
- Describe the Java object structure returned by queries such as
- select user from User as user
- select user, user.name from User as user
- Write code using the Session API that creates and execute queries
- Inject parameters values in where clauses : using Query.setXXX() methods
- Externalize queries in mapping files
- Query by Criterias and Query by Example
- Write code that executes a simple query (equivalent to select + where + sorting)
- Describe the purpose of the following related APIs : createCriteria(), Restrictions, Projections, Order, Criterion, Example, Example.create()
- Native SQL query
- Identify the 2 places where you define the SQL query string (hardcoded or externalized)
- Describe how to retrieve an externalized query using the Session API
Transaction
Basic knowledge of Transaction and related things
- Write java code that use the Transaction object
- Start and End a transaction
- Test whether a transaction is active
- Rollback a transaction
- Write proper try-catch structure
- Identify Hibernate's implementations of the org.hibernate.Transaction interface
- Pessimistic Locking
- Write code that pessimistic-locks an entity using the related APIs Session.get()
- Identify the different LockModes
- Optimistic Locking
- Declare optimistic locking in mapping files <version> and <timestamp> and Annotations.
- Explain when a StaleObjectStateException can be thrown
分享到:
相关推荐
算法初步课件 1.3 算法案例--进位制.ppt
论本土资源与法治的矛盾冲突 - - --兼谈法治的渊源与理念.docx
SRPBoard 繁体升级包 V1.2.1 -> V2.0
文件上传程序
1.可以观察一元,二元函数图形和分形图形绘制 2.字符计算功能,支持各种灵活的表达方式 ...3.改进的Excel交换和输入错误异常
ADMIN目录下的adduser.asp,轻松方便 五、如果你在使用本系统中有任何疑问及不明可以到 www.ye21.net提问,我会及时回答! 六、希望大家能够加入以下版权...
Evolution behavior of mixed screw-edge dislocations propagating through atmospheric turbulence
道德之剑的熔铸 --也谈法官职业道德体系的构筑.docx
ADMIN目录下的adduser.asp,轻松方便 五、如果你在使用本系统中有任何疑问及不明可以到 www.ye21.net提问,我会及时回答! 六、希望大家能够加入以下版权...
3.可以删除已添加的新闻,修改新闻功能很快就能编好; 4.可以添加新闻标题链接到其他网页的新闻。 5.可编辑新闻; 6.可由自已的网站发布免费的新闻代码; 7.用户直接通过管理界面管理网站公告(DEMO at ...
A finite-time convergent Zhang neural network and its application to real-time matrix square root finding
A finite-time recurrent neural network for solving online time-varying Sylvester matrix equation based on a new ...
Group Paging based on Pre-Backoff Access Scheme in Machine-Type Communications
数据通信与计算机网 第 3 章 数据链路层.ppt
新闻</a> <!-- 新闻的链接标记 --> 学习园地</a> <!-- 学习园地的链接标记 --> 健康指南</a> <!-- 健康指南的链接标记 --> </font></...
给出超K-代数上的模糊正则同余关系的定义,构建了商超K-代数,运用模糊同余关系,研究了一些相关的性质,证明商结构是BCK-代数。
通过研究HKT-80BK,设计了一种准双工声控对讲机。HKT-80BK是一款语音通信模块,其具有语音加密,自动消除尾音,静噪级别可调等功能,可以满足通话声音清晰的要求。此对讲机以微电子技术为基础,并给出了以HKT-...
Robust control for uncertain nonlinear system using isomorphism-based robust right coprime factorization
将HTML标签外的空格替换为