This week's book giveaway is in the Mac OS forum. We're giving away four copies of a choice of "Take Control of Upgrading to Yosemite" or "Take Control of Automating Your Mac" and have Joe Kissell on-line! See this thread for details.
Hibernate is a Object-Relational Mapping tool. Any data in a database that does not have a primary key is not relational data, since it can't reliably participate in any relationships without a guarenteed identifier. Entity Relational models that contain entities without a defined primary key are, in my opinion, most probably broken.
I say most probably, since there are the odd occasions where you may need to store non-relational data in a database for some other reason. For example, if the database is your only shared, transactional resource it could be use as a simple persistance resource, rather than a truely relational store. However, these situations are very much the exception, not the rule, and Hibernate includes ways round most situations. Where it doesn't, if you are using it with a pattern like DAO its easy enough to delegate to whatever mechanism you use to manage non-relational data.