Unfortunately that's not possible in Java, let alone with iBATIS.  

 

If you're just trying to create subclasses based on a type column in the
database, look up "discriminator" in the ibatis documentation or mailing
list archives...

 

Clinton

 

From: Hugh Ross [mailto:[EMAIL PROTECTED] 
Sent: January-30-08 9:23 AM
To: [email protected]
Subject: Safe to replace valueObject in RowHandler?

 

 

Trying to be more specific:

 

Is it safe to create another object in the handleRow method, and set the
valueObject to it?

 

Is it safe to use queryForObject from within a handleRow method?  I've seen
other posts that imply it is.

 

Will that object then replace the original one, if it was created by a
queryForList or queryForObject call?  If I don't hear back, I guess I'll try
it to see...
 

Thanks...
 

On 1/29/08, Hugh Ross <[EMAIL PROTECTED]> wrote: 

 

I have the good fortune to work on a large domain model, part of which uses
too much inheritance.  I don't want to use a huge outer join with 15 or 20
tables in it.  I'm wondering if I can use RowHandlers to help.  In
particular, is it possible for a RowHandler to replace the object passed to
the handleRow method?

 

E.g.,

 

public void handleRow (Object valueObject)
   throws SQLException {
   Person person = (Person) valueObject;
   valueObject = MyFactory.createSubClassObject( person );

}

Any other sample solutions to this kind of problem are also most welcome...

 

 

Reply via email to