首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >独立Java应用程序的规则引擎

独立Java应用程序的规则引擎
EN

Stack Overflow用户
提问于 2012-04-27 08:17:43
回答 4查看 3.6K关注 0票数 1

我有一个独立的Java应用程序,为此我必须集成一个规则引擎。我应该使用属性文件或XML文件来定义规则。我需要有规则引擎来读取在属性或XML文件中定义的这些规则,并相应地在应用程序中实现代码。

任何这样的规则引擎(open-source),,我都可以将它用于我的应用程序。请注意,我不希望在Application或Web中部署任何规则引擎。我需要有某种jar文件,在那里我可以直接将它用于我的应用程序。

请指导我是否有这样的规则引擎,我可以利用?

EN

回答 4

Stack Overflow用户

发布于 2012-04-27 08:22:12

您可以使用Drools,它也可以在独立程序中使用。

http://www.jboss.org/drools

票数 1
EN

Stack Overflow用户

发布于 2013-03-31 09:14:24

塞上警报!

我有偏见,因为这是我自己的项目,但如果你想要一个极其快速和轻量级的规则引擎,你可以查看罗莉

这个项目背后的哲学是基于我个人的经验,即JSR-94是过火的,大多数规则引擎太重,依赖性太多,学习曲线陡峭。

Roolie不处理更改应用程序状态的“功能”规则(无论如何,这些规则应该是Java的,IMHO)。

相反,它允许开发人员使用单个"passes“方法实现简单规则,并将它们与XML文件中的短路布尔逻辑链接在一起。它没有任何的运行时依赖,而且速度非常快。

它是一个简单问题的简单解决方案(即用户能看到一个文件吗?)只有当他们是“登录”,“管理”或“强大的用户”,和“有足够的帖子”)。

综合规则为"UserCanSeeFile“,由"IsLoggedIn”、"IsAdmin“、"IsPowerUser”和"HasEnoughPosts“组成。

如果以后您不关心他们有多少帖子要让他们看到一个文件,只要按一下XML行,您就完成了。

票数 1
EN

Stack Overflow用户

发布于 2015-03-06 00:07:19

我在java中尝试了几个表达式评估库。我发现MVEL是最好的。在我的例子中,我从数据库中读取“规则”。所以我的规则看起来

player.platform == 'iOS‘&( player.ltv > 100 \\ player.status >=黄金)

现在我所做的就是解析上面所有变量的表达式。在我的例子中,变量是带有点( object.method )的任意标记。对我起作用了。不知道你会不会成功。

但是一旦所有变量都被值所取代。我刚刚调用了一个MVEL.evaluate()。

在我的例子中,我需要计算的所有表达式都将在布尔结果中给出。但是,MVEL可以计算任何不同结果类型的表达式。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10347161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档