: Thursday Morning Tutorials (8:30 - 12:00) : Thursday
Challenges in Object-Relational Mapping
Royal Palm Salon 6
Thursday, 8:30, half day
Alan Knight, Cincom Systems
Tutorial number: 47
Object-oriented programming and relational databases are two of the dominant programming models of our time. Why is it so difficult to make them work together?
This tutorial examines the core issues, design trade-offs and practical difficulties in using objects and relational databases together. At the architectural level, this affects how queries are defined, how objects are associated with transactions, and concurrency strategies. At the mapping level, we need to consider the mapping of different types of relationships, including inheritance. The difference between programming language nil/null and database NULL is significant, though often overlooked. At all levels, performance, including the ability to performance-tune at either the object or the database level, is critical.
For the most part, the discussion will be language-neutral, but when specific language features are relevant to the mapping, specific examples will be used, drawn primarily from Java and Smalltalk.
Intermediate: Basic knowledge of object-oriented programming and relational databases is helpful, but not required.
Alan Knight, Cincom Systems: Alan Knight works on Smalltalk database and web tools for Cincom Systems, and is lead on the GLORP open-source object-relational mapping layer. Prior to joining Cincom he was chief architect for TOPLink with The Object People (TOPLink is now owned by Oracle). He was a member of the Sun expert groups on EJB 2.0 and JDO. Alan has spoken extensively at conferences including OOPSLA, Smalltalk Solutions, JAOO, OOP and Java One, and is co-author of the book, Mastering ENVY/Developer. He can be reached as firstname.lastname@example.org.