我正在用Java编写一个基本的web,它可以完成几乎所有其他人所做的工作:输入,验证,然后在DB上执行CRUD操作。我以前写过几个API,我已经很好地理解了什么构成了对客户端的良好响应。
但是,与大多数API一样,在前端客户端API对象和实际对数据库执行查询的代码之间调用了几层对象。我一直在努力弄清楚那些数据库交互对象应该返回到调用它们的函数。
我设想,在出现错误时,我会抛出异常并在调用堆栈中更远的位置捕捉它们。然而,我对成功的回报是什么?这是我以前用过的:
我对Read返回感到很舒服,因为我想不出在这种情况下还会返回什么。但是,我不知道从创建和更新函数返回值的最佳实践是什么。应该使用更新的值返回一个新对象吗?我应该修改传入的对象吗?我是否应该返回一个布尔值,表示成功或失败?
发布于 2014-01-06 12:41:42
在创建时,我通常返回我刚刚创建的实体的ID。在更新时,我返回刚更新的对象。删除我通常不返回任何东西。
在create的例子中,最有趣的部分是创建的id。如果无法创建,就会抛出一个错误,所以您使用的布尔值并不那么有趣。还可以使用ID返回整个对象。
在更新时,使用任何修改的字段(由更新者或其他人)返回对象是最有意义的。
删除要么工作,要么抛出一个异常,不需要返回值。
https://softwareengineering.stackexchange.com/questions/223302
复制相似问题