Я использую весеннюю загрузку и создаю API с методом, подобным приведенному ниже:
@RestController
@RequestMapping("/api/products/")
@Api(value = "ProductControllerApi",produces = MediaType.APPLICATION_JSON_VALUE)
public class ProductController {
@PostMapping
public ResponseEntity<ProductDto> createProduct(@RequestBody Product product) {
URI location = ServletUriComponentsBuilder.fromCurrentRequest().path("/{id}").buildAndExpand(product.getId()).toUri();
return ResponseEntity.created(location).body(productService.createProduct(product));
}
}
Но когда пользователь, использующий устройство, вызывает мой метод ( / api / products / ) с тем же временем,это дублирует создание с теми же данными.Пример: при использовании create user выглядит как {"name": "Samsung" "cost": "26 $"}
, при этом создаются две записи в базе данных с одинаковыми данными.Как обнаружить дублирующиеся данные из другого источника (пример: пользователь использует два мобильных телефона и звонит в одно и то же время одним и тем же методом и создает одинаковые данные).Как избежать этого, и если он вызывает одно и то же время с теми же данными, он вставляет только одну запись в базу данных