使用REST在Spring中的同一事务下进行GET和PUT

时间:2016-06-03 10:08:57

标签: java spring rest spring-mvc

我正在学习spring mvc,其中使用gigaspace作为后端存储而不是数据库。我做了一个基本的get和put操作,即我发送休息请求给我一个对象说id-1,然后在前端用户对对象进行一些更改并点击保存按钮,发送请求与数据和对象在太空中更新。

现在,如果有多个用户,我想确保当user-a读取具有id-1的对象并单击编辑按钮时,应该在该特定对象的空间中获取锁定,并且如果任何其他用户尝试访问相同的对象,他们不应该查看此对象,除非完成保存操作,锁定应该被释放。

为确保此行为,我如何确保在与REST的同一事务中读取和保存id-1

1 个答案:

答案 0 :(得分:1)

尝试查找eTag,如果它对您有所帮助。您可以编写自己的乐观锁定类,或者为实体使用@Version注释来保留有关实体更改的信息。只需添加:

@Version
private long version;

此信息将显示在标题中。 我发现this article用于乐观锁定:)