yes, and it's basically the same problem. I have no problems with transactions. It's batching that I am dealing with. 2 different animals. :)
On 5/5/05, Paul Barry <[EMAIL PROTECTED]> wrote: > Have you looked into Spring's transaction management? > > Gregg D Bolinger wrote: > > I actually talked about this approach with a colleague just last > > night. We are using a singleton for our daoManager so this would work > > perfectly, I think. I'll try it out and let you know. > > > > On 5/4/05, Clinton Begin <[EMAIL PROTECTED]> wrote: > > > >>Oops....forgot to mention another pattern... > >> > >> One thing you can do is have a BatchDAO which basically just defines two > >>methods: startBatch and endBatch. Then you could do: > >> > >> daoManager.startTransaction() > >> batchDao.startBatch() > >> someDao.insert() > >> someOtherDao.update() > >> anotherDao.delete() > >> batchDao.endBatch() > >> daoManager.commitTransaction() > >> > >> That would give you the flexibility of batching in some cases, but not all. > >> You could even delegate the call to daoManager.startTransaction() and > >>batchDao.startBatch() to a base service method, so you wouldn't always have > >>to call both. I typically put such methods in around advice or just a > >>simple dynamic proxy at my service layer. > >> > >> Cheers, > >> Clinton > >> > >> > >>On 5/4/05, Clinton Begin <[EMAIL PROTECTED]> wrote: > >> > >>>That is actually an option. I thought about adding that in 2.0, and IIRC > >> > >>it wouldn't be hard to add. > >> > >>>Of course, you'd have to live with the challenges of what basically > >> > >>amounts to a write cache. That is, in this scenario: > >> > >>>start TX > >>>insert into PEOPLE > >>>select from PEOPLE > >>>end TX > >>>select from PEOPLE > >>> > >>>...the result of the first insert would not be seen by the first select, > >> > >>but would be seen by the second. > >> > >>>Cheers, > >>>Clinton > >>> > >>> > >>> > >>>On 5/4/05, Gregg D Bolinger < [EMAIL PROTECTED]> wrote: > >>> > >>>>Well, my approach won't work. You can't get to the startBatch from > >>>>the service. DaoManager only handles transactions. SqlMpa handles > >>>>batching. So the batches have to be done in the DAO which makes it > >>>>impossible to batch more than one DAO. > >>>> > >>>>What would be nice is if iBatis just batched transactions by default. > >>>> > >>>>On 5/4/05, Clinton Begin < [EMAIL PROTECTED]> wrote: > >>>> > >>>>> Your approach sounds good. I wouldn't try to overcomplicate this. > >>>>> > >>>>> Cheers, > >>>>> Clinton > >>>>> > >>>>> > >>>>>On 5/2/05, Gregg D Bolinger <[EMAIL PROTECTED] > wrote: > >>>>> > >>>>>>I am using iBatis SqlMap and iBatis DAO. I am trying to look into > >>>>>>doing batch inserts/updates/delete within a single transaction for > >>>>>>multiple DAO's. So should I create a Service that just handles my > >>>>>>batches and has an instance of each DAO that it needs, or is there a > >>>>>>different way? Anyone have any tips or hints on doing this? > >>>>>> > >>>>>>Thanks. > >>>>>> > >>>>> > >>>>> > >>>> > >>> > >> >