Это должно работать.
<a
href={`https://waze.com/ulll=${this.state.linkLat},${this.state.linkLng}&navigate=yes`}
target="_blank">
Open in Waze
</a>
Почему бы не передать запрашиваемую блокировку непосредственно самому запросу?
MyEntity entity = entityManager.find(MyEntity.class, key, LockModeType.PESSIMISTIC_WRITE);
Насколько я понимаю, это делает именно то, что вы хотели. ( документация )
Я только что нашел метод getReference
в EntityManager
, который получает экземпляр, состояние которого можно лениво извлекать. Как сказано в документации:
Получить экземпляр, состояние которого можно лениво извлекать. Если запрошенный экземпляр не существует в базе данных, EntityNotFoundException генерируется при первом обращении к состоянию экземпляра. (Среде выполнения поставщика постоянства разрешается генерировать исключение EntityNotFoundException при вызове getReference.) Приложение не должно ожидать, что состояние экземпляра будет доступно после отсоединения, если только оно не было доступно приложению, пока был открыт менеджер сущностей.
blockquote>В качестве возможного решения для поиска и блокировки обновленной сущности по идентификатору в одном запросе мы можем использовать следующий код:
MyEntity entity = entityManager.getReference(MyEntity.class, key); entityManager.refresh(entity, LockModeType.PESSIMISTIC_WRITE);
Этот запрос создаст сущность (без базы данных запрос), а затем обновите и заблокируйте объект.