problem description
I have read a lot of articles on the Internet, and they all say that optimistic locks are generally the way to add version fields and use CAS. However, we all know that it is very troublesome to implement this solution in a project without the transaction propagation mechanism of Spring declarative transactions. Because this means that it can only be implemented by programmers themselves, and every time you write a update, you have to consider this problem. There is no online article saying that Spring"s declarative transactions support this.