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.
"However, let’s suppose data model is not in sync with object model, this is where the model starts breaking down. One size does not fit all. So this is where I like to use iBatis; as the alternative solution, iBatis maps results sets to objects, so no need to care about table structures."
Can anybody please tell me what is the meaning of the above phrase.
Thanks in advance.
If you want something you never had do something which you had never done
Basically the person is trying to say that changes to the database structure causes you to change your mapping, and your Java classes in something like Hibernate, whereas in iBatis has no mapping of database tables to Java objects, just mapping queries, and therefore a change in the database structure doesn't mean you have to change your mappings.
Now, my take, is that that isn't really an advantage. Because, in most cases database structure changes will mean to me that I still have to go into the mapping and change the queries, and I will most likely still have domain objects that probably will change too.
To me, the biggest advantage iBatis has over Hibernate is that it has a much smaller learning curve and has better stored procedure support.