请叫我Tobin 2018-02-02 03:38 采纳率: 100%
浏览 1429
已采纳

串行验证该用什么设计模式?

我要对一个对象验证,不是对象自己的属性。

举例:比如对订单验证,

1要验证商品库存是否大于0,不大于0抛出异常。

2要验证订单中钱款是否与支付的钱款一致,不一致抛出异常。

3验证优惠卷号是否已经使用。

4....

只有所有验证都通过才能成功,任何一个验证不通过则失败。

随着业务的增加,验证还会继续增加。

这个该用什么设计模式实现呢?

  • 写回答

7条回答 默认 最新

  • 私奔Sven 2018-02-03 03:07
    关注

    你好,如果你用的是springmvc,可以采用JSR-303协议进行验证,不仅可以满足业务类自身属性的细致检验。还可以进行业务逻辑检验,当然只是这个业务类自身的业务逻辑检验,比如,开始时间必须大于当前时间,金钱必须大于20000.00等。我个人研究且做过,只需创建一个业务验证类即可,再controller层直接拦截,返回可识别信息。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办