This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
Recently I came across a database developer that didn't like to normalize. I wanted to use Hibernate to create an object representation of that data, but it was extremely difficult because things were very flat. Are there any handy tricks that anyone knows of to overcome scenarios like this? Any insight would be appreciated.
There are many times is it good in production environments to throw out normalization, such as when the performance hit of joining the tables vastly exceeds the performance hit of maintaining the denormalized structure.
As Scott said though, you can use Views and/or Triggers in a db environment to automate some of these tasks to make your data appear normalized or denormalized when it isn't.
Hibernate, like JDO, does support inheritence mappings (vertical, horizontal, flat) and if the data is as difficult to work with as you say, applying one of these patterns might help. Ultimately, if the data is too forgone for object mapping tools, then your best bet is to restructure it.