Please add any relevant technologies and some information about them!
Hibernate gives you transparent persistence for Plain Old Java Objects. 'Transparent' here refers to the fact that it works through it's own session objects - you don't have to change a line of your java code to make a class persistent. There are all sorts of developments afoot with respect to queries in hibernate, but the basic mechanism is to use Hibernate Query Language, a minimal modification of SQL to make it more objecty. It can make navigating persistent object graphs very much easier. e.g. "Find me bitstreams of type 'application/pdf' on Items submitted by 'Fred loggs'" would be something like this is HQL: -
select b from itstream b where b.format.MIMEType='application/pdf' and b.item.submitter.name='Fred loggs'; |
I don't like to think what it would be in SQL. You can also deal with graphs of objects without worrying too much - hibernate can cascade updates and maintain one-to-many and many-to-many relationships: -
Item i = new Item(); |