java - 数据库行中的公式 - Java

标签 java parsing dsl formula

要么这个要求很奇怪,要么我应该让自己太困惑 我有一个包含 30 列的规则表。 Feed 文件中的每一行都会根据 Feed 类型与部分或全部条件进行比较。域是银行业,应用程序用于贷款报告(例如,报告担保贷款和无担保贷款的总额)

这是我的问题:

If the (total of collateral amount)> loan principal amount, then consider the principal amount for consolidation

Else if the (total of collateral amount)<loan principal amount, then consider only the amount covered by collateral

我有大约 5 个用户这样的场景(应该是可定制的)(比如说,如果抵押品是现金/股票,那么只考虑现金抵押品/股票抵押品)。

这种情况可能会发生更多。我不知道应该如何解决这个问题。我的计划是在规则表中创建一个列,并在其中包含一些预先格式化的简单英语条件(记录并教用户这一点),使用正则表达式解析它们,然后将其转换为数字。我对 DSL 没有任何知识/经验,这是最好的??!!我能想到什么。任何帮助对我来说都将是知识的重要来源。谢谢。阿伦

最佳答案

您可以使用业务规则引擎来实现此目的,而不是实现自己的解析逻辑或编写 DSL。

引用Business Rules Engine了解详情。大多数规则引擎将允许您用简单的英语创建语法来定义此类规则。我们使用ilog JRULES用于定义此类规则。还有其他几种可用的商业和开源规则引擎。一款流行的开源软件是drools .

关于java - 数据库行中的公式 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1000164/

相关文章:

java - 运行 Java Web 应用程序的最低要求

Java SAX 解析器 : Different between `localName` and `qName`

c++ http/2 解析升级

tomcat - docker tomcat重新部署应用程序

java - XText:交叉引用找不到引用

java - 调用 toString 方法时遇到问题

java - 样式 toast 背景 - 找不到与给定名称匹配的资源

Javascript:解析 csv 中的字符串返回 NaN (不是数字)

sql - 从 SQL 中剥离文字值以正确识别数据库工作负载的最佳方法是什么?

c# - 如何使用NEST执行子聚合?