我有Spring MVC应用程序,可以为某些事情保留时间段。
用户选择时间间隔,然后开始填写一些数据(名称,地址等)。 但是在一个时间段内有最多的预订数量。
因此,当用户选择时间间隔并开始填写数据时,其他一些用户可以更快地完成此操作并在此时间段内获得最后一个位置。
为了防止这种情况,我想要原子散列图,它会包含试图保留此时间段的用户数量。
所以,我的问题是:
为此目的使用Google Guava AtomicLongMap是个好主意吗?将Spring与Google Guava一起使用是一种好习惯吗?
答案 0 :(得分:2)
Spring使用番石榴很好 - 它只是另一种依赖。
Java也有自己的内置原子包http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/package-summary.html
我认为解决像你这样的问题的正常方法是在用户启动时简单地锁定一个预留(虽然不确定你提出的确切要求)。