Java - JPA - @Version annotation
- by Yatendra Goel
I am new to JPA. I am cofused about the @Version annotation.
How it works?
I have googled it and found various answers whose extract is as follows:
JPA uses a version field in your entities to detect concurrent modifications to the same datastore record. When the JPA runtime detects an attempt to concurrently modify the same record, it throws an exception to the transaction attempting to commit last.
But still I am not sure how it works?
==================================================================================
Also as from the following lines:
You should consider version fields immutable. Changing the field value has undefined results.
Does it mean that we should declare our version field as final