What iBatis lets ME do is create a DAO base class that I can re-use.
Eventualy DAO maps to a ... model suchas as TableModel (wahtever else... and TableModel maps to a jTableView. And TableModel is my "disconected row set/data set" that matheces my view requirment). The pooint of OO is to increase produtivity via reuse. I can write more OO w/ iBatis. Also, to me, relational and set (aka Collection) is more mathenmticaly correct view to the business problem I solve.

ORM... thinks OO is having an instance of Object in some docs they have. So if I have an array[] of People... it does not match my business problem, I have to look how to rig it in. I don't have OO. And... I don't have SQL to make it fast.

Yet another ex, Master Detail. In iBatis/"datasets" I retrieve a List of (a few fields) Maps for jTable (w/ page offsets in SQL). When user clicks on a row, I retrive a Map (of all or most fields) that coresposd to my Form. 2 hits to SQL, to get 2 sets, each optimized and tuned to what I want, /w DBA help. Matches my mock up of screen shots in requirments and I can unit test any and reproduce.

In ORM... I keep an array of People[] is some ORM engine. It gives me a subset of People objects (w/ all the fields even if I don't need them in memory, each person object is a CRUD) and ORM "computes" page ofsets, etc. (ORM's have years of exeprience tunint request, SQL has decades of experrience tuning selects). When I click on a row, it does not hit the DB again, the row is there in array[]. To unit test... well, it depends what you had in ORM before, harder to break out a module (for those that think unit testing speads you up) You could ... force manaual SQL for each Person object and deltas and..
It does not fit and no OO and no P&T (performance and tuing by DBA).

If you work large sites... they could also have other lanages, .NET, PHP. The ORM architecture is just less portable to other tech stacks.


Abdullah Kauchali wrote:

The point I am making is that, it looks like iBatis has /intentions/ of answering the fundamental questions that all ORM's have ambitions of solving - the primary one being the ability to give the programmer a /natural/ (cough!) feel for their objects.


Your Roomity Broadband Community <http://roomity.com/demo.jsp>

cell: 917 825 3035 in DFW
email: netsql at roomity.com

Reply via email to