国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

SpringBoot整合Drools的實現步驟

瀏覽:2日期:2023-03-09 11:39:00
目錄Drools有什么用SpringBoot整合Drools初步實戰1.導入Maven依賴2.編寫配置類3.resources目錄新建rules目錄4.新建實體5.編寫規則文件6.單元測試(只要正常輸出,表示整合是Ok的,接下來就可以任意應用了)7.輸出結果Drools有什么用

從我個人所待過的公司,其中做智能酒店這個項目時就用到規則引擎Drools,將它用于處理優惠?還嬖頡?/p>SpringBoot整合Drools初步實戰1.導入Maven依賴

<properties><drools.version>7.14.0.Final</drools.version></properties><!-- drools --><dependency> <groupId>org.drools</groupId> <artifactId>drools-compiler</artifactId> <version>${drools.version}</version></dependency>2.編寫配置類

package com.springcloud.blog.admin.config;import org.kie.api.KieBase;import org.kie.api.KieServices;import org.kie.api.builder.*;import org.kie.api.runtime.KieContainer;import org.kie.api.runtime.KieSession;import org.kie.internal.io.ResourceFactory;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.core.io.Resource;import org.springframework.core.io.support.PathMatchingResourcePatternResolver;import org.springframework.core.io.support.ResourcePatternResolver;import java.io.IOException;@Configurationpublic class KiaSessionConfig { private static final String RULES_PATH = 'rules/'; @Bean public KieFileSystem kieFileSystem() throws IOException {KieFileSystem kieFileSystem = getKieServices().newKieFileSystem();for (Resource file : getRuleFiles()) { kieFileSystem.write(ResourceFactory.newClassPathResource(RULES_PATH + file.getFilename(), 'UTF-8'));}return kieFileSystem; } private Resource[] getRuleFiles() throws IOException {ResourcePatternResolver resourcePatternResolver = new PathMatchingResourcePatternResolver();final Resource[] resources = resourcePatternResolver.getResources('classpath*:' + RULES_PATH + '**/*.*');return resources; } @Bean public KieContainer kieContainer() throws IOException {final KieRepository kieRepository = getKieServices().getRepository();kieRepository.addKieModule(new KieModule() { public ReleaseId getReleaseId() {return kieRepository.getDefaultReleaseId(); }});KieBuilder kieBuilder = getKieServices().newKieBuilder(kieFileSystem());kieBuilder.buildAll();return getKieServices().newKieContainer(kieRepository.getDefaultReleaseId()); } private KieServices getKieServices() {return KieServices.Factory.get(); } @Bean public KieBase kieBase() throws IOException {return kieContainer().getKieBase(); } @Bean public KieSession kieSession() throws IOException {return kieContainer().newKieSession(); }}3.resources目錄新建rules目錄4.新建實體

package com.springcloud.blog.admin.drools;public class People { private int sex; private String name; private String drlType; public int getSex() {return sex; } public void setSex(int sex) {this.sex = sex; } public String getName() {return name; } public void setName(String name) {this.name = name; } public String getDrlType() {return drlType; } public void setDrlType(String drlType) {this.drlType = drlType; }}5.編寫規則文件

package com.springcloud.blog.admin.droolsimport com.springcloud.blog.admin.drools.Peopledialect 'java'rule 'man' when$p : People(sex == 1 && drlType == 'people') thenSystem.out.println($p.getName() + '是男孩');end6.單元測試(只要正常輸出,表示整合是Ok的,接下來就可以任意應用了)

package com.springcloud.blog.base.controller.test.task;import com.springcloud.blog.admin.BlogAdminApplication;import com.springcloud.blog.admin.drools.People;import org.junit.Test;import org.junit.runner.RunWith;import org.kie.api.KieBase;import org.kie.api.runtime.KieSession;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.test.context.junit4.SpringRunner;@RunWith(SpringRunner.class)@SpringBootTest(classes = BlogAdminApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)public class DroolsJunitTest { @Autowired private KieSession session; @Test public void people() {People people = new People();people.setName('YC');people.setSex(1);people.setDrlType('people');session.insert(people);//插入session.fireAllRules();//執行規則 }}7.輸出結果

YC是男孩

以上就是SpringBoot整合Drools的實現步驟的詳細內容,更多關于SpringBoot整合Drools的資料請關注好吧啦網其它相關文章!

標簽: Spring
相關文章:
主站蜘蛛池模板: 男人的天堂网在线 | 久草福利资源网站免费 | 免费一级做a爰片久久毛片 免费一级做a爰片性色毛片 | 粉嫩高中生的第一次在线观看 | 亚洲网站视频 | 欧美日本一道道一区二区三 | 久久久久亚洲精品一区二区三区 | 久草在线视频网站 | 涩涩网站 | 日韩精品福利视频一区二区三区 | 国内交换一区二区三区 | 亚洲视频在线观看地址 | 国产一级在线观看 | 日本免费人成在线网站 | 一本综合久久国产二区 | 免费一级特黄欧美大片勹久久网 | 欧美性色生活免费观看 | 欧美成人综合在线 | 男人女人真曰批视频播放 | 精品国产成人高清在线 | 大毛片a大毛片 | 黄色影院在线观看视频 | 日韩一及片 | 一个人看的日本免费视频 | 国产90后美女露脸在线观看 | 日韩欧一级毛片在线播无遮挡 | 国产精品久久久久久久久久久久久久 | 日韩亚洲欧美一区 | 亚洲高清视频在线观看 | 国产成年人 | 中文字幕在线网址 | 日韩一区在线播放 | 久久免费观看国产精品 | 国产高清一区 | 国产精品视频免费播放 | 欧美jlzz18性欧美 | 亚洲欧洲日产国码一级毛片 | 亚洲欧美国产精品久久久 | 91情侣高清精品国产 | 日韩欧美精品一区二区三区 | 在线综合亚洲欧美自拍 |