Как обновить кэш для всех пользователей - PullRequest
0 голосов
/ 26 марта 2019
@Entity
@Table
@Cacheable(cacheNames = "domain")
@org.hibernate.annotations.Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE, include="non-lazy")
public class Test implements Serializable {

    private Long id;
    private Long orderNumber;

    public String getId() {
        return id;
    }

    public void setId(Longid) {
        this.id = id;
    }

    public String getOrderNumber() {
        return orderNumber;
    }

    public void setOrderNumber(LongorderNumber) {
        this.orderNumber= orderNumber;
    }

@Transient
    private synchronized Integer getNextOrderNumber() {

        if (orderNumber== null) {
            orderNumber= 1l;
        } else {
            orderNumber++;
        }
        return orderNumber;
    }


При вызове метода getNextOrderNumber с разных машин одновременно я получил один и тот же порядковый номер.Но я хочу получить разные порядковые номера для разных заказов.

Пожалуйста, предложите наилучшее из возможных решений.Как это не уникально в базе данных.поэтому я не могу использовать уникальные ограничения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...