ORM - Object Relational Mapping: The idea is to provide: - pre-canned mapping between OO classes/fields and table/columns - manually defined mappings - provides object persistency without looking at the DB Good: - abstraction - ease of debug Bad: - performance Example: Hibernate Example of Hibernate Mapping Example of Hibernate Usage (many details are hidden) Honey honey = new Honey(); honey.setName("forest honey"); honey.setTaste("very sweet"); ... tx = session.beginTransaction(); session.save(honey); tx.commit(); ... tx = session.beginTransaction(); session.update(honey); tx.commit(); ... tx = session.beginTransaction(); List honeys = session.createQuery("select h from Honey as h").list(); tx.commit(); --------------------------------------------------------------------------- --- Next we talk about DriadLINQ... it provides similar features but adds much more in particular: - LINQ language integration - Batch-oriented - Cluster-oriented - More than SQL ==================================================================