I was actually doing exactly this in my demo project that I posted some months ago. See - ObjectPersister.
http://www.noogen.net/download/free/Blogs.zip FYI: >From my presentation feedback, I found that it was hard for (.Net) Developers to get head around the (java) DAO Pattern. It was also too much work to generate and maintain these DAO. My new implementation relies on the generated CRUD DataMapper statements to be the object's full type name. Example: I would have mapped statement like this Rels.Business.Blog.Fill Rels.Business.Blog.Create Rels.Business.Blog.Retrieve Rels.Business.Blog.Update Rels.Business.Blog.Insert >From experience, we can say that roughly 90%+ of our work revolves around CRUD statements. For custom statement, I just go directly to ObjectPersister.DataMapper.Map.QueryFor...(customstatementname, ...). It's basically writing a new DataAccess method instead of using iBatis which involves DAO. I'm working on some sample of the new code. I will post to the list shortly if anyone interested. Regards, Tom Nguyen Sr. Developer [EMAIL PROTECTED] -----Original Message----- From: Peter Mills [mailto:[EMAIL PROTECTED] Sent: Monday, September 25, 2006 11:18 AM To: [email protected] Subject: Re: Persisting Object Graph I would love to hear more about your solutions, Brian. I plan on implementing similar functionality. Cheers, Peter Choi, Brian wrote: > Hi all. Anybody implemented Object Graph Persistence using IBatis? > > It seems like there is only loading support via Lazy Load. (Java > version has join fetch). > > It will be great if someone can share their experience or best practice. > > Currently I am using external xml or custom attribute so that I can > use that info > > to persist all the related objects. It will be much easier if we have > similar construct describing object relationship > > for insert, update and delete as in "select" clause in ParameterMap. > > Brian Choi > ************************************************************************************ This e-mail message and any files transmitted herewith, are intended solely for the use of the individual(s) addressed and may contain confidential, proprietary or privileged information. If you are not the addressee indicated in this message (or responsible for delivery of this message to such person) you may not review, use, disclose or distribute this message or any files transmitted herewith. If you receive this message in error, please contact the sender by reply e-mail and delete this message and all copies of it from your system. ************************************************************************************

