8
回答
java实现多个不同条件的验证,请问有什么好思路?
【腾讯云】学生服务器套餐10元/月 >>>   
在开发过程中遇到一个需求,对于我这样的小白感觉太难了:就是在判断一条数据时:会对一条数据的每个字段设置成一个条件,有时候一个字段会有很多个条件,在开发过程中为了实现可配置的,将不同数量的条件作为一个验证规则存储在了数据库中,在使用时直接根据规则编码调用即可,但是尴尬的是在后期进行使用时,我能够读取规则并解析,但是就是有些写不来,针对多个条件是用if还是有什么算法的,请大神指点一下迷津,谢谢。
<无标签>
举报
共有8个答案 最后回答: 2周前
你会拼接字符串吧,通过读取condition生成下面的SQL即可 select *, (age > 21 and mony >280.05 and accessTime > '2015-05-31') as cond from 资产表
针对你这种情况,需要先写个模板,然后再跟规则配合,比如说有一个字段,首先这个字段的数据类型有N种,你就得先根据数据类型设定N中模板,然后每个数据类型有M种校验方法,你就得再针对每个模板设定好M种方法的执行流程,你这样设定好了之后,每次就很容易调用了; eg:有个数字类型的字段  需要校验该字段的值是否大于某个值 那么你的调用顺序就是:  获取数字类型校验模板,选择校验值大于某个值的方法
--- 共有 1 条评论 ---
别忘了带红领巾谢谢,但是我的是要多个条件,多个逻辑符。目前我想到的是两两判断,但是语句我有些写不出来。 2周前 回复
先  找到  判断的  优先级      哪个要先判断  哪个 最后判断 要明确。  一个判断条件大于3中情况 或者 以后还会添加 就建议所用switch       
--- 共有 1 条评论 ---
别忘了带红领巾谢谢,但是多个条件之间会存再逻辑运算符呀。 2周前 回复
现在有个数据表
年龄(age : int) 资产 (money : number) 入网日期 (accessTime : date)
20 100.00 2017-03-24
20 150.00 2016-05-07
21 300.00 2015-04-03
21 240.00 2015-07-15
22 300.00 2014-12-21
21 300.00 2014-12-21
另外,有一张条件表,condition:
字段名(fieldName : varchar) 运算符(oper : varchar) 阈值 (threshold : varchar )
age = 21
money > 280.05
accessTime > 2015-05-31
条件表condition用来配置过滤用户person的条件,表示要筛选出符合条件
  • 年龄等于21岁
  • 资产大于280.05
  • 入网日期在 2015-06-01之后
的所有用户。符合条件的我有固定输出结果,不符合的也是有错误输出结果。谢谢
顶部