This is the code for insert, update and delete (there's only one concept of
"update").
PreparedStatement ps = (PreparedStatement) statement;
ps.execute();
int rows = ps.getUpdateCount();
Object parameterObject = boundSql.getParameterObject();
KeyGenerator keyGenerator = mappedStatement.getKeyGenerator();
keyGenerator.processAfter(executor, mappedStatement, ps,
parameterObject);
return rows;
Clinton
On Tue, Oct 13, 2009 at 10:30 AM, Josh Joy <[email protected]> wrote:
> If the feature has been removed, could you please clarify what is the
> expected behavior if the return value for insert is not void?
>
> On Tue, Oct 13, 2009 at 10:46 AM, Clinton Begin <[email protected]>
> wrote:
> > Yes, removed. It was made clear long ago, that iBATIS 3 would be a
> > completely new implementation. Some features are not carried forward,
> > others are changed and there's a lot of new ones. iBATIS is 7 years old.
> > It was time to make some changes.
> > Cheers,
> > Clinton
> >
> > On Tue, Oct 13, 2009 at 9:32 AM, Rick.Wellman <[email protected]>
> > wrote:
> >>
> >> I have not looked at the source you’re referring to but did you
> >> “deprecate” the behavior or “remove” the behavior. I am not sure if you
> >> have a standing policy on things like this but here is my opinion:
> >>
> >> I understand the need to “clean things up” in a major release but I tend
> >> to favor “formal deprecation” where possible to give the user community
> a
> >> migration path.
> >>
> >>
> >>
> >> If this has all decided and taken care of already, then (as the church
> >> lady says)…. Nevermind.
> >>
> >>
> >>
> >> From: Clinton Begin [mailto:[email protected]]
> >> Sent: Tuesday, October 13, 2009 10:24 AM
> >> To: [email protected]; [email protected]
> >> Subject: Re: [ibatis 3] insert return generated id?
> >>
> >>
> >>
> >> I deprecated that behaviour, because the API was inconsistent. And then
> >> the question would arise, how do I get the row count for the number of
> rows
> >> inserted? (it's possible).
> >>
> >>
> >>
> >> So now the only way is to set the id on the objects themselves. If you
> >> have a weird case where the ID is not on the parameter object, just wrap
> it
> >> in a Map.
> >>
> >>
> >>
> >> Clinton
> >>
> >> On Tue, Oct 13, 2009 at 6:38 AM, Josh Joy <[email protected]> wrote:
> >>
> >> Hi,
> >>
> >> I'm using MS Sql Server 2005, previously with iBatis v2.x, I was able
> >> to get the generated id from an insert as the return value for a
> >> method.
> >>
> >> With iBatis v3, the return value is always "1", which I'm assuming
> >> means 1 row was inserted.
> >>
> >> How can I configure the api to return the generated id from an insert?
> >> For the insert, I am using keyProperty="id" useGeneratedKeys="true",
> >> and that seems to work... my object property id has the generated id.
> >> Though I would like it as the return value for the insert method as
> >> well...
> >>
> >> Thanks,
> >> Josh
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [email protected]
> >> For additional commands, e-mail: [email protected]
> >>
> >>
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>