【问题标题】:Catch the exception or trown the business exception directly捕获异常或直接抛出业务异常
【发布时间】:2015-11-23 11:49:49
【问题描述】:

我正在使用 Spring Boot 和 Spring Data。

在Service层,最好是插入记录,通过唯一键捕获“已插入”异常,而不是将其转换为业务异常或使用存储库查找记录,而不是抛出业务直接异常?

【问题讨论】:

  • 最好从客户那里抽象出详细的原因。捕获一些数据库异常后,最好使用适当的消息抛出自定义异常

标签: java spring spring-mvc spring-data


【解决方案1】:

数据库 PK 是保持唯一性约束的最佳方法,如果您尝试查询和检查 PK 的方法,那么您可能会进入竞争条件,它将通过唯一性检查但插入失败,因此应该抛出任何 SQL 异常被处理。 所以最好通过 Exception 来处理并转化为完全业务错误的意思。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-24
    • 2016-02-17
    • 1970-01-01
    • 2021-09-02
    • 2011-06-27
    • 2015-02-13
    • 2018-03-09
    • 1970-01-01
    相关资源
    最近更新 更多