当前位置: 首页 > news >正文

江苏广泽建设有限公司网站注册公司最低多少钱

江苏广泽建设有限公司网站,注册公司最低多少钱,ti外包网站建设,建设公众号网站评分标准细则规则引擎作用 规则引擎主要用于将业务逻辑从应用程序代码中分离出来#xff0c;提高系统的灵活性和可维护性。规则引擎通过预定义的规则来处理输入数据并做出相应的决策#xff0c;从而实现业务逻辑的自动化和动态调整。 例如 门店信息校验#xff1a;美团点评在门店信息…规则引擎作用 规则引擎主要用于将业务逻辑从应用程序代码中分离出来提高系统的灵活性和可维护性。规则引擎通过预定义的规则来处理输入数据并做出相应的决策从而实现业务逻辑的自动化和动态调整。 例如 门店信息校验美团点评在门店信息校验过程中使用规则引擎对门店信息进行质量控制。规则包括分支条件、简单计算规则和业务定制计算规则等。通过规则引擎门店信息校验过程变得更加高效和准确。 业务场景说明 不同会员的折扣率不同 代码结构 集成 Drools即规则引擎到 Spring Boot 可以帮助你实现业务规则的动态管理和执行。下面我来简要说明一下业务场景和代码实现的步骤 1. 添加依赖 首先需要在 pom.xml 文件中添加 Drools 的依赖 !-- drools规则引擎 --dependencygroupIdorg.drools/groupIdartifactIddrools-compiler/artifactIdversion7.6.0.Final/version/dependency2. 创建规则文件 在项目的src/main/resources目录下创建一个名为rules的文件夹并在其中创建一个名为sample.drl的规则文件 package com.song; import com.song.rulesobj.Customerrule ORDINARY-Customers whencustomer: Customer(type ORDINARY) thencustomer.setDiscount(0.9*customer.getOriginalPrice()); // 9折 普通会员 endrule VIP-Customers whencustomer: Customer(type VIP) thencustomer.setDiscount(0.6*customer.getOriginalPrice()); // 6折 VIP会员 endrule SVIP-Customers whencustomer: Customer(type SVIP) thencustomer.setDiscount(0.4*customer.getOriginalPrice()); // 4折 SVIP会员 end3. 定义实体类 创建一个简单的实体类 Customer用于表示客户信息 package com.song.rulesobj;import lombok.Data;Data public class Customer {/*** 客户类型*/private String type;/*** 客户订单价格*/private Double originalPrice; // 订单原始价格即优惠前的价格/*** 优惠后最终结算价格*/private Double discount; } 4. 配置 Drools 规则引擎 在 Spring Boot 应用程序中配置 Drools 规则引擎的 bean package com.song.conf;import com.song.bean.DiscountBean; import org.kie.api.KieServices; import org.kie.api.builder.KieBuilder; import org.kie.api.builder.KieFileSystem; import org.kie.api.builder.KieRepository; import org.kie.api.runtime.KieContainer; import org.kie.api.runtime.KieSession; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;Configuration public class DroolsConfig {Beanpublic KieContainer kieContainer() {KieServices kieServices KieServices.Factory.get();KieRepository kieRepository kieServices.getRepository();KieFileSystem kieFileSystem kieServices.newKieFileSystem();kieFileSystem.write(kieServices.getResources().newClassPathResource(rules/sample.drl));KieBuilder kieBuilder kieServices.newKieBuilder(kieFileSystem);kieBuilder.buildAll();return kieServices.newKieContainer(kieRepository.getDefaultReleaseId());}Beanpublic KieSession kieSession() {return kieContainer().newKieSession();}Beanpublic DiscountBean discountBean() {return new DiscountBean(kieSession());}} 5. 应用规则引擎 在业务代码中使用注入的 KieSession 执行规则 /******************************************************************************** Package: com.song.bean* Type: DiscountService* Date: 2024-06-28 13:45** Copyright (c) 2024 LTD All Rights Reserved.** You may not use this file except in compliance with the License.*******************************************************************************/ package com.song.bean;import com.song.rulesobj.Customer; import org.kie.api.runtime.KieSession;/*** 功能描述 规则处理器封装** author Songxianyang* date 2024-06-28 13:45*/ public class DiscountBean {private KieSession kieSession;public DiscountBean(KieSession kieSession) {this.kieSession kieSession;}public void applyDiscount(Customer customer) {kieSession.insert(customer); // 插入客户对象到规则引擎中kieSession.fireAllRules(); // 执行规则// 客户对象已经被更新包含了计算出的折扣System.out.println(客户订单价格customer.getOriginalPrice()客户折扣类型: customer.getType() , 优惠后最终结算价格: customer.getDiscount());}}6. 测试规则引擎 编写一个简单的测试类来验证规则引擎是否按预期工作 package com.song.web;import com.song.bean.DiscountBean; import com.song.common.annotation.ResponseInfoSkin; import com.song.rulesobj.Customer; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.kie.api.runtime.KieContainer; import org.kie.api.runtime.KieSession; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController;RestController Api(tags 规则引擎) ResponseInfoSkin public class DemoController {Autowiredprivate DiscountBean discountBean;PostMapping(/discount)ApiOperation(打折)public Double discount(RequestBody Customer customer) {// 规则处理器封装discountBean.applyDiscount(customer);return customer.getDiscount();} } 测试截图 总结 通过上述步骤你可以将 Drools 规则引擎集成到 Spring Boot 应用程序中并使用规则文件动态管理业务规则实现不同客户类型的动态折扣计算。这种方式可以使得业务规则更易于维护和修改同时与应用程序解耦提高了灵活性和可维护性。
http://www.w-s-a.com/news/525282/

相关文章:

  • 什么网站有题目做西宁网站制作哪里好
  • 网站上添加图片的原则优易主机 wordpress
  • 用php做的网站源代码那里有做像美团的网站的
  • 网站建设百科有什么做兼职的网站
  • 创造网站电商网站建设方案道客巴巴
  • 南通设计网站建设wordpress时光轴
  • 郑州做网站企起网站建设 风险
  • 北京市保障性住房建设投资中心网站6大连广告设计与制作公司
  • 建站之星网站模板国内f型网页布局的网站
  • 怎么做网站关键词优化外贸网站 开源
  • 广东公司响应式网站建设设计seo系统是什么
  • 清丰网站建设费用网站建设的前途
  • 网站上那些兼职网页怎么做的北京网页
  • 桂林建站平台哪家好品牌设计公司宣传文案
  • 平面设计和建设网站的区别公司官网静态
  • h5网站建设+案例住房住房和城乡建设部网站
  • 建设股公司网站东莞建设网网上平台
  • 湖州吴兴建设局网站加强网站建设的
  • 茌平做网站公司专业商城网站建设报价
  • 网站结构图怎么画wordpress注册不发送件
  • 个人备案网站可以做论坛吗电商推广方式有哪些
  • 网站建设 自适应国内最近的新闻
  • 校园网站开发背景吴江网站建设公司
  • 网站开发工程师发展趋势山东省建设工程电子信息网站
  • 适合大学生创业的网站建设类型吉林省舒兰市建设银行网站
  • 呼和浩特网站建设哪家好培训学校加盟费用
  • 网站如何做友情链接有道云笔记WordPress
  • 贵阳企业网站建设制作赤峰浩诚网站建设公司
  • asp官方网站微信模板素材
  • wordpress 留言给站长发邮件做百度推广员赚钱吗