Drools 如何从内存中加载drool文件?

Drools 如何从内存中加载drool文件?,drools,apache-storm,Drools,Apache Storm,我已经使用drool生成了警报,我已经从数据库中创建了drool文件。每次我从项目中的资源文件夹加载.drl文件时,我都会进行大量io操作 我想克服这个问题,有没有办法从内存中加载drool文件 那是Drools 5?是时候升级了。但您只需使用与我使用Drools 6代码提供的步骤相同的步骤;类名有些变化。您可以这样做一次: KieBase kieBase = ...; FileOutputStream fos1 = new FileOutputStream( OUTPATH );

我已经使用drool生成了警报,我已经从数据库中创建了drool文件。每次我从项目中的资源文件夹加载
.drl
文件时,我都会进行大量io操作


我想克服这个问题,有没有办法从
内存中加载drool文件

那是Drools 5?是时候升级了。但您只需使用与我使用Drools 6代码提供的步骤相同的步骤;类名有些变化。您可以这样做一次:

  KieBase kieBase = ...;
  FileOutputStream fos1 = new FileOutputStream( OUTPATH );
  ObjectOutputStream oos1 = new ObjectOutputStream( fos1 );
  oos1.writeObject( kieBase );
  oos1.close();
每次跑步都要执行以下操作:

  FileInputStream fis9 = new FileInputStream( OUTPATH );
  ObjectInputStream ois9 = new ObjectInputStream( fis9 );
  KieBase kieBase1 = (KieBase)ois9.readObject();
  KieSession kieSession = kieBase1.newKieSession();

您可以通过编译和序列化结果来准备规则库。您现在如何创建会话?StatefulKnowledgeSession ksession=kbase.newStatefulKnowledgeSession();像这样,我正在创建statefull会话?