如何在 Spring 启动中验证唯一的事务 ID?



上下文 :-

我正在春季启动中验证我的休息 API。每个 API 调用中都会发送一个事务 ID。我正在编写一个自定义注释,以确保每次发送的交易 ID 都是唯一的。下面是请求 api 正文的示例:-

{
"timestamp": "2020-05-12T04:15:28.318Z",
"txnid": "acscscs-4a18-11e8-96ff-05sdsadd",
"cust_id": "abc@gmail.com"
}

如何确保txnid交易 ID 不重复,即如果我两次使用相同的交易 ID,那么应该会抛出错误?

我计划将每个交易 ID 保存到表中的客户 ID 映射中,查询表以检查交易 ID 是否唯一。这是一种有效的方法吗?

或者有没有其他有效/更简单的方法来实现相同的目标?

您的解决方案很好,但缺点是数据库可能不是txnid的事实来源。假设存在txnid保存在 api 中,但保存在数据库中失败。 我建议以下解决方案:

动态查询 API 以获取txnid(假设:如果txnid存在或HTTP.NOT_FOUND400,则提供响应HTTP.OK 200API 的 api(。在这种情况下,API 将是唯一的事实来源。

相关内容

  • 没有找到相关文章

最新更新