请叫我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条)

报告相同问题?

悬赏问题

  • ¥100 有人会搭建GPT-J-6B框架吗?有偿
  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名