我正在开发一个应用程序,它从数据库中获取PENDING记录的数量并处理记录。处理过程中的状态是“PROCESSING”,并将记录标记为“ERROR”或“SUCCESS”。 如果所有记录都成功处理,则状态需要更新为数据库中的“SUCCESS”。 如果某些记录未能处理,我需要将它们更新为“错误”,并在错误日志表中插入错误原因,同时将剩余的更新成功。 我正在考虑使用状态设计模式来实现这一点。状态设计模式执行查询
我的问题 - 我知道如果我一次处理一个记录,那么使用状态设计模式来实现它是有意义的。如果处理批量记录,用State状态来实现是否合理? 如果没有,还有其他的选择吗?
所有记录是否相同,处理相同?你描述的是存储状态,而不是状态模式。 – Wain
是的,所有记录的处理过程都是相同的。如果某些记录被识别为错误,那么我需要调用与成功不同的SP。此外,我有一个状态“PROCESSINGERROR”,它重试处理错误记录。我在考虑使用状态模式的原因是因为很容易确定每个状态发生了什么。这是否有正确的设计意义? – user1399653