前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Drools集成CDI(二)

Drools集成CDI(二)

作者头像
程序新视界
发布2022-05-09 19:23:42
3090
发布2022-05-09 19:23:42
举报
文章被收录于专栏:丑胖侠丑胖侠

上节课《Drools集成CDI(一)》中我们介绍了CDI的基本使用,这节课带大家学习一下Drools如何集成CDI。

添加依赖

首先使用drools7的话需要在正常使用CDI的基础上添加drools-cdi的依赖:

代码语言:javascript
复制
<dependency>
    <groupId>org.drools</groupId>
    <artifactId>drools-cdi</artifactId>
    <version>${drools.version}</version>
</dependency>

beans.xml和kmodule.xml配置与之前的使用方式一致;

使用方式一

代码语言:javascript
复制
public class Chapter4 {


	@KSession
	KieSession kieSession;

	@Inject
	Chapter4(KieSession kieSession){
		this.kieSession = kieSession;
	}

	public static void main(String[] args) {

		Weld weld = new Weld();
		Chapter4 chapter4 = weld.initialize().instance().select(Chapter4.class).get();
		chapter4.doFire();

	}

	private void doFire(){
		int nums = kieSession.fireAllRules();
		System.out.println("Fire " + nums + " rules!");
	}
}

方式二

将获取对象的方式由Weld替换为SeContainer:

代码语言:javascript
复制
SeContainer seContainer = null;
try {
	seContainer = SeContainerInitializer.newInstance().initialize();

	Chapter4 chapter4 = seContainer.select(Chapter4.class).get();
	chapter4.doFire();

} finally {
	if (seContainer != null && seContainer.isRunning()) {
		seContainer.close();
	}
}

更多详细内容请参考《Drools7规则引擎进阶教程》

原文链接:https://www.choupangxia.com/topic/detail/91

相关技术视频

CSDN学院:《Drools7规则引擎进阶教程》

CSDN学院:《Drools7规则引擎入门教程》

CSDN学院:《Drools7系列优惠套餐》

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 添加依赖
  • 使用方式一
  • 方式二
  • 相关技术视频
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档