- 博客(138)
- 资源 (6)
- 收藏
- 关注

原创 到底什么是规则引擎?
我对Mark Proctor大师这段话理解是,Drools是规则引擎,更准确的是说它是一个生产规则的系统,其中“Production Rule” 源于一种“Formal grammar”,而规则引擎被认为是一种精确描述形式语言的抽象结构,简单的理解为我们在代码上描述的一组规则。随着时代的进步,发展趋势,规则引擎也成为了很大部分低代码平台的核心,甚至你在搜索规则引擎关键字时,都会附带这低代码的字样。Drools规则引擎是有一定学习成本的,虽说是它的底层是Java,但它有自己独特的语法。Drools博客专栏。
2024-10-16 09:34:09
1650

原创 《Drools规则引擎技术指南》 已经正式上架
《Drools规则引擎技术指南》 已经正式上架,国内首本Drools规则引擎中文教程,感谢您的支持,从基础入门到高级应用本书中都有说明,为我国规则引擎方面填补了空白,为国内IT事业尽微薄之力。以下是购买地址:京东自营:https://item.jd.com/12650530.html当当自营:http://product.dangdang.com/27896937.html...
2019-07-10 14:37:22
5916
7

原创 Drools7中文教程 文档 指南
Drools7<------点击左侧文字 即可下载开源教程676219749是博主创建的讨论群,期待您的加入 上面有Drools7+sql+SpringBoot的实战项目哦。下图为群文件内容,好的资料要学会共享,,别着急,往下看---------------------注意:下面高能,以下内容均为VIP会员可享受的特权------- VIP群欢迎 你的加入注意啦 注意啦...
2019-03-29 10:53:00
34252
14

原创 Drools动态规则
动态规则,是做规则引擎最想知道的问题,小编也加过一些群,大部分的人都喜欢问这样的问题。规则只能写在文件里嘛规则引擎能做什么规则可动态配置嘛在项目中使用规则引擎,业务人员怎么用呢?规则变化了怎样才能不重启项目就能用呢......总是一脸懵逼的在研究着...小编今天就给大家分析说明一下:首先规则可以写法有很多,像规则决策表就是写在Excel中的,规则文件,重点是还可以以字符串的方式编写,聪明的读者是不...
2018-04-26 16:29:55
8545
原创 聊聊AI Agent与AI 数字分身
之前,我们对AI应用做出个七层划分:事实上AI Agent依然属于这个犯错的AI应用,其核心是数据与工程能力的结合,而数据最终来源依旧是行业KnowHow,如果抛开行业专家是做不出来AI应用的。回顾这七个层级,从焦虑驱动的小白应用到改写行业规则的基座模型真正决定AI应用价值的,一直是对行业本质的穿透力。当技术红利逐渐褪去,行业KnowHow将成为区分「玩具」与「工具」的核心标尺。在医疗领域,一个能准确识别胸痛待查与急性心梗。
2025-04-02 19:38:16
704
原创 毕业倒计时:两个月冲刺求职与 AI 能力提升全攻略
毕业的钟声即将敲响,在这倒计时的两个月里,每一刻都显得尤为珍贵。对于即将踏入社会的毕业生而言,如何高效利用这段时间,做好求职准备并提升自身实力,是迈向理想职业的关键。而在当今数字化时代,掌握 AI 工具更是增添了一份强大的竞争力。接下来,让我们一同探索这两个月的冲刺攻略。
2025-04-02 19:34:14
779
原创 HttpClient使用方法总结及工具类封装
GET请求、PUT请求、DELETE请求设置超时时间的方法同上。GET请求、PUT请求、DELETE请求添加请求头的方法同上。
2025-04-01 11:11:55
152
原创 十年磨一剑:一位 Java 程序员的成长与蜕变
在 Java 编程领域,成长是一段充满挑战与突破的旅程。对于投身其中的程序员而言,十年时光足以见证从初涉门槛到独当一面的蜕变,这期间所积累的经验与能力,深刻诠释了 “十年磨一剑” 的内涵。
2025-04-01 10:36:23
967
原创 致敬著书与开源LiteFlow之路的坚守者
每一个技术知识点,我都需要反复验证,从理论到实践,不断地测试代码示例,确保准确性。著书不易,开源更难,但正是因为有了我们这些在各自领域坚守的人,技术的火种才能不断传递,照亮更多人前行的道路。我作为《Drools 规则引擎技术指南》的作者,同时也是见证国内规则引擎技术发展的一员,深知其中的不易,今天特别想和大家聊聊著书与开源背后那些鲜为人知的故事。在群内,大家不仅可以围绕 Drools 规则引擎技术展开深入探讨,还能发布招聘信息,进行其他技术领域的学习交流,期待您的加入,共同营造活跃的技术交流氛围。
2025-03-31 10:31:57
463
原创 Java的IO模型、Netty原理详解
虽然作为Java开发程序员,很多都听过IO、NIO这些,但是很多人都没深入去了解这些内容。Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等说起Java的IO模型,绕不开的就是Netty框架了,那什么是Netty,为什么Netty的性能这么高呢?Netty是由JBOSS提供的一个Java开源框架。提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器。
2025-03-30 20:56:22
761
原创 我亲测有效的工作效率提升秘籍
身为职场人,我深知高效工作的重要性。在过往的工作经历中,我不断探索和实践,总结出了一套行之有效的提升工作效率的方法,现在就来和大家分享一下。
2025-03-29 16:55:09
624
原创 JavaScript 性能优化实战:突破瓶颈,打造极致 Web 体验
在当今快节奏的互联网时代,用户对于 Web 应用的性能要求越来越高。一个响应迅速、流畅运行的 Web 页面能够极大地提升用户体验,反之,缓慢的加载速度和卡顿的交互则可能导致用户流失。JavaScript 作为 Web 开发的核心语言之一,其性能优化对于打造极致 Web 体验起着至关重要的作用。本文将深入探讨 JavaScript 性能优化的实战技巧,帮助开发者突破性能瓶颈。
2025-03-28 16:02:20
970
原创 SpringBoot访问静态文件
相信很多初学者都会遇到这样的问题,我们创建好的SpringBoot如何像SSM架构那样访问我们的文件呢。下面我的我就将所问题的问题和大家说明一下首先看一下小编第一次创建的例子,小编是通过官方提供的页面创建的SpringBoot项目 创建地址,我们将其导入到IDE中pom.xml 引用包。
2025-03-28 15:25:58
591
原创 SQL基础语句大全(建议收藏)
本文系统梳理了SQL基础语句,涵盖单表查询、多表关联、聚合统计、子查询等核心操作。HAVING 用于对分组后的结果进行条件过滤(类似WHERE,但作用于分组后)。SELECT * 表示选取表中所有字段,适用于快速查看全表数据。DISTINCT 用于消除重复记录,适用于统计唯一值场景。GROUP BY 需与非聚合字段结合使用,支持多字段分组。支持 >, <, =,!=, >=, <= 等运算符。右连接保留右表全部数据,全外连接保留两表所有记录。仅返回两表中匹配的行,适用于需要精确关联的场景。
2025-03-27 10:31:07
747
原创 AI 与 IT 从业者:共生进化而非取代革命
在代码自动生成工具 GitHub Copilot 每分钟协助编写数千行代码、AI 运维系统实时监控百万级服务器的今天,IT 从业者正站在技术变革的十字路口。AI 是否会成为 "职业终结者"?这个问题的答案并非非黑即白,而是需要从技术本质、行业特性和人类价值三个维度进行深度剖析。
2025-03-25 15:37:17
799
原创 SQL Server 2022 常见问题全解析
作为微软最新一代的数据库管理系统,SQL Server 2022 在带来新特性的同时,也可能在安装、配置、维护过程中遇到各种问题。本文整理了最常见的 20 + 技术难题,涵盖安装部署、连接配置、备份恢复等核心场景,助你快速定位问题并找到解决方案。
2025-03-25 15:27:46
965
原创 如何从百度百科快速了解《Drools 规则引擎技术指南》
在群内,大家不仅可以围绕 Drools 规则引擎技术展开深入探讨,还能发布招聘信息,进行其他技术领域的学习交流,期待您的加入,共同营造活跃的技术交流氛围。它表明《Drools 规则引擎技术指南》在 Drools 规则引擎技术领域具有一定的权威性和影响力,是该领域重要的参考资料之一,增强了其在专业领域的可信度和知名度。打开百度搜索引擎,在搜索框中输入 “Drools 规则引擎技术指南”,在搜索结果中,带有 “百度百科” 标识的词条通常会排在前列,点击该词条即可快速进入对应的百度百科页面。
2025-03-25 14:55:52
767
原创 互联网人的至暗时刻:当“金三银四“成为传说,我们如何破局重生?
当某大厂HR在朋友圈晒出"收到某985计算机系全班简历"时,当35岁程序员在深夜写下"转行外卖员的第一天"时,我们不得不承认:那个靠刷八股文进大厂、凭重复劳动涨薪的时代已彻底终结。但历史总在重演——2000年互联网泡沫破裂后,幸存者成为Web2.0时代的弄潮儿;2008年金融危机时,提前布局移动互联网的人收获了时代红利。今天的至暗时刻,或许正是重建职业价值坐标的契机。当褪去大厂光环、放下无效内卷,我们会发现:程序员真正的护城河不是熟悉的IDE界面,而是持续进化的底层能力;
2025-03-25 14:54:16
684
原创 AI 不是洪水猛兽,而是人类文明的下一把钥匙
当人工智能以破竹之势渗透进生活的方方面面,关于 “AI 取代人类” 的焦虑论调也甚嚣尘上。有人将 AI 比作洪水猛兽,担忧它会吞噬就业、侵蚀创造力,甚至威胁人类的主导地位。但稍加审视便会发现,这种焦虑源于对技术的误解与短视。AI 并非人类的对手,而是人类文明进化的催化剂 —— 它不是洪水猛兽,而是打开未来世界的一把钥匙。
2025-03-25 14:52:41
615
原创 享元模式(Flyweight Pattern)
运用共享技术有效地支持大量细粒度的对象。在有大量对象时,有可能会造成内存溢出,我们把其中共同的部分抽象出来,如果有相同的业务请求,直接返回在内存中已有的对象,避免重新创建。1、系统中有大量对象。2、这些对象消耗大量内存。3、这些对象的状态大部分可以外部化。4、这些对象可以按照内蕴状态分为很多组,当把外蕴对象从对象中剔除出来时,每一组对象都可以用一个对象来代替。5、系统不依赖于这些对象身份,这些对象是不可分辨的。用唯一标识码判断,如果在内存中有,则返回这个唯一标识码所标识的对象。
2024-10-21 14:03:44
515
原创 外观模式(Facade Pattern)
为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。降低访问复杂系统的内部子系统时的复杂度,简化客户端之间的接口1、客户端不需要知道系统内部的复杂联系,整个系统只需提供一个"接待员"即可。2、定义系统的入口客户端不与系统耦合,外观类与系统耦合。在客户端和复杂系统之间再加一层,这一层将调用顺序、依赖关系等处理好。1、去医院看病,可能要去挂号、门诊、划价、取药,让患者或患者家属觉得很复杂,如果有提供接待人员,只让接待人员来处理,就很方便。
2024-10-21 14:00:41
268
原创 装饰器模式(Decorator Pattern)
动态地给一个对象添加一些额外的职责。就增加功能来说,装饰器模式相比生成子类更为灵活。一般的,我们为了扩展一个类经常使用继承方式实现,由于继承为类引入静态特征,并且随着扩展功能的增多,子类会很膨胀。在不想增加很多子类的情况下扩展类。装饰类和被装饰类可以独立发展,不会相互耦合,装饰模式是继承的一个替代模式,装饰模式可以动态扩展一个实现类的功能。多层装饰比较复杂。1、扩展一个类的功能。2、动态增加功能,动态撤销。可代替继承。
2024-10-18 16:17:38
486
原创 组合模式(Composite Pattern)
将对象组合成树形结构以表示"部分-整体"的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。它在我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以像处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。您想表示对象的部分-整体层次结构(树形结构)。您希望用户忽略组合对象与单个对象的不同,用户将统一地使用组合结构中的所有对象。树枝和叶子实现统一接口,树枝内部组合该接口。树枝内部组合该接口,并且含有内部属性 List,里面放 Component。
2024-10-18 16:14:32
766
原创 过滤器模式(Filter Pattern)
结合多个标准来获得单一标准。java8里面有典型的应用方法就是分组操作,可以根据指定的指标进行分组筛选灵活性:通过定义不同的过滤器实现类和不同的谓词(Predicate),我们可以灵活地对数据集合进行过滤,从而得到符合不同条件的子集可扩展性:在实现过滤器模式时,我们可以添加、组合和重用不同的过滤器,从而轻松扩展过滤器的功能简单性:过滤器模式非常简单且易于理解。它将数据集合和过滤器分开,使得代码更加清晰和易于维护性能问题:当数据集合非常大时,过滤器模式可能会导致性能问题。
2024-10-16 09:26:28
727
原创 桥接模式(BridgePattern)
将抽象部分与实现部分分离,使它们都可以独立的变化。在有多种可能会变化的情况下,用继承会造成类爆炸问题,扩展起来不灵活。实现系统可能有多个角度分类,每一种角度都可能变化。把这种多角度分类分离出来,让它们独立变化,减少它们之间耦合。抽象类依赖实现类。比如猪八戒从天蓬元帅转世投胎到猪,转世投胎的机制将尘世划分为两个等级,即:灵魂和肉体,前者相当于抽象化,后者相当于实现化。生灵通过功能的委派,调用肉体对象的功能,使得生灵可以动态地选择。
2024-10-16 09:18:38
743
原创 适配器模式(Adapter Pattern)
将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。主要解决在软件系统中,常常要将一些"现存的对象"放到新的环境中,而新环境要求的接口是现对象不能满足的。系统需要使用现有的类,而此类的接口不符合系统的需要。想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作,这些源类不一定有一致的接口。通过接口转换,将一个类插入另一个类系中。
2024-10-15 16:56:00
684
原创 原型模式(Prototype Pattern)
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。在运行期建立和删除原型。当一个系统应该独立于它的产品创建,构成和表示时。当要实例化的类是在运行时刻指定时,例如,通过动态装载。为了避免创建一个与产品类层次平行的工厂类层次时。当一个类的实例只能有几个不同状态组合中的一种时。建立相应数目的原型并克隆它们可能比每次用合适的状态手工实例化该类更方便一些。利用已有的一个原型对象,快速地生成和原型对象一样的实例。实现克隆操作,在。
2024-10-15 16:51:35
747
原创 建造者模式(Builder Pattern)
将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示主要解决在软件系统中,有时候面临着"一个复杂对象"的创建工作,其通常由各个部分的子对象用一定的算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将它们组合在一起的算法却相对稳定一些基本部件不会变,而其组合经常变化的时候将变与不变分离开建造者:创建和提供实例,导演:管理建造出来的实例的依赖关系1、去肯德基,汉堡、可乐、薯条、炸鸡翅等是不变的,而其组合是经常变化的,生成出所谓的"套餐"。
2024-10-14 10:29:43
776
原创 单例模式(Singleton Pattern)
保证一个类仅有一个实例,并提供一个访问它的全局访问点。一个全局使用的类频繁地创建与销毁。当您想控制实例数目,节省系统资源的时候。判断系统是否已经有这个单例,如果有则返回,如果没有则创建。构造函数是私有的。一个班级只有一个班主任;Windows 是多进程多线程的,在操作一个文件的时候,就不可避免地出现多个进程或线程同时操作一个文件的现象,所以所有文件的处理必须通过唯一的实例来进行;一些设备管理器常常设计为单例模式,比如一个电脑有两台打印机,在输出的时候就要处理不能两台打印机打印同一个文件。
2024-10-14 10:22:52
976
原创 抽象工厂模式(Abstract Factory Pattern)
提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。主要解决接口选择的问题。系统的产品有多于一个的产品族,而系统只消费其中某一族的产品。在一个产品族里面,定义多个产品。在一个工厂里聚合多个同类产品。工作了,为了参加一些聚会,肯定有两套或多套衣服吧,比如说有商务装(成套,一系列具体产品)、时尚装(成套,一系列具体产品),甚至对于一个家庭来说,可能有商务女装、商务男装、时尚女装、时尚男装,这些也都是成套的,即一系列具体产品。
2024-10-08 11:40:51
816
1
原创 工厂模式(Factory Pattern)
定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。主要解决接口选择的问题。我们明确地计划不同条件下创建不同实例时。让其子类实现工厂接口,返回的也是一个抽象的产品。创建过程在其子类执行。您需要一辆汽车,可以直接从工厂里面提货,而不用去管这辆汽车是怎么做出来的,以及这个汽车里面的具体实现。Hibernate 换数据库只需换方言和驱动就可以。
2024-10-08 10:42:39
1183
原创 Java设计模式概述
设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。
2024-09-30 17:30:23
1081
原创 MyBatis 面试题11-27
Mybatis 作为半自动 ORM 工具,提供了更大的灵活性和控制能力,但也要求开发者具备更多的技术知识和手动操作。而全自动的 ORM 工具则试图通过减少手动配置的需求,使开发者能够更快速地构建应用程序,但可能会牺牲一些灵活性和控制力。选择哪种类型的 ORM 工具,取决于具体项目的需求和团队的技能水平。19、一对一、一对多的关联查询在关系型数据库中,实体之间的关系通常可以分为一对一(One-to-One)和一对多(One-to-Many)两种关联关系。
2024-09-14 16:28:43
1216
Drools——KieHelper的用法,通过模板的例子说明
2016-07-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人