Question

I've got a postgres table where the ID is defined as bigserial. How can I use @Insert and get back the id of the inserted entity? I am expecting the mapper method to either return the id or populate the id field inside the entity object. Any ideas?

Was it helpful?

Solution

NVM, i think i found the answer on the other thread, http://mybatis-user.963551.n3.nabble.com/How-to-return-the-ID-of-the-inserted-object-under-Postgres-td1926959.html

There's the link for anyone else who lands here.

OTHER TIPS

The mapper will return you the number of records that were actually inserted. In order to get back the id of the inserted record, you'll need to add a second annotation (that will populate the id) :

@Options(useGeneratedKeys=true, keyProperty="idSomething")

Note that keyProperty is not necessary if the identifiyng property is named "id" in your entity object.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top