HOME > Development > Master Drools Programming Learn How to Write Drools Rules

Master Drools Programming Learn How to Write Drools Rules

  • Development
  • Mar 18, 2025
SynopsisMaster Drools Programming – Learn How to Write Drools R...
Master Drools Programming Learn How to Write Rules  No.1

Master Drools Programming – Learn How to Write Drools Rules, available at $64.99, has an average rating of 4.37, with 98 lectures, based on 1762 reviews, and has 9023 subscribers.

You will learn about Program rules in Drools 7 domain specific language Learn Drools language constructs like insert, modify, exists, forall, insertLogical, salience, agenda-group etc Create spreadsheet decision tables and spreadsheet templates What is Complex Event Processing and how Drools handles it How to use rule templates (DRT or Freemarker) and run dynamically defined DRL Understand different Drools running modes (active/passive, cloud/stream, sequential) How Drools works internally and what to keep in mind for writing faster performing rules This course is ideal for individuals who are Developers and system architects who need to understand what a rule engine is and which type of problems can be solved with it or Anyone who needs to write rules in Drools DSL programming language or Developers and system architects needing more info about adding Drools rule engine to their project or Anyone who is considering using Drools for writing rules or processing stream of events It is particularly useful for Developers and system architects who need to understand what a rule engine is and which type of problems can be solved with it or Anyone who needs to write rules in Drools DSL programming language or Developers and system architects needing more info about adding Drools rule engine to their project or Anyone who is considering using Drools for writing rules or processing stream of events.

Enroll now: Master Drools Programming – Learn How to Write Drools Rules

Summary

Title: Master Drools Programming – Learn How to Write Drools Rules

Price: $64.99

Average Rating: 4.37

Number of Lectures: 98

Number of Published Lectures: 97

Number of Curriculum Items: 98

Number of Published Curriculum Objects: 97

Original Price: 24.99

Quality Status: approved

Status: Live

What You Will Learn

  • Program rules in Drools 7 domain specific language
  • Learn Drools language constructs like insert, modify, exists, forall, insertLogical, salience, agenda-group etc
  • Create spreadsheet decision tables and spreadsheet templates
  • What is Complex Event Processing and how Drools handles it
  • How to use rule templates (DRT or Freemarker) and run dynamically defined DRL
  • Understand different Drools running modes (active/passive, cloud/stream, sequential)
  • How Drools works internally and what to keep in mind for writing faster performing rules
  • Who Should Attend

  • Developers and system architects who need to understand what a rule engine is and which type of problems can be solved with it
  • Anyone who needs to write rules in Drools DSL programming language
  • Developers and system architects needing more info about adding Drools rule engine to their project
  • Anyone who is considering using Drools for writing rules or processing stream of events
  • Target Audiences

  • Developers and system architects who need to understand what a rule engine is and which type of problems can be solved with it
  • Anyone who needs to write rules in Drools DSL programming language
  • Developers and system architects needing more info about adding Drools rule engine to their project
  • Anyone who is considering using Drools for writing rules or processing stream of events
  • We learn Drools DSL (Drools programming language) and go over the most common DSL constructs. We move in small steps and gradually introduce new concepts so it is easier to follow even for a beginner.

    This way we cover the most common Drools topics like:

  • what is a rule engine

  • what is the difference between a method and a rule

  • why one would use a rule engine instead of writing regular Java code

  • understanding of the when/then clauses

  • understanding in which order the rules fire and when the order is not known

  • how to control the execution using activation groups, agenda groups and salience

  • declaring variables in DRL

  • difference between stateless and stateful sessions

  • inserting facts and modifying existing objects in the session

  • cross products (similar to SQL join)

  • exists, forall and collect

  • using spreadsheet decision tables to create Drools rules

  • using templates for creating rules and feeding data into them from spreadsheets and other tabular data sources

  • complex event processing (CEP) in Drools

  • difference between fact and event

  • declaring facts and events in Java and inside DRL code

  • different rule execution modes (active/passive, cloud/stream, sequential)

  • time and length based sliding windows

  • entry-points

  • global variables

  • timers

  • how Drools internal algorithm Phreak works

  • This course comes with two Java projects that have all the code we work with during this course. You are encouraged to check out and run the code yourself to get a better understanding and experiment yourself with making changes to it. There are instructions on how to get the code running in IntelliJ, Eclipse, and VS Code.

    After completing this course you have a better understanding of which kinds of problems could be solved with Drools and how to write the most common business rules in Drools DSL.

    Course Curriculum

    Chapter 1: 1. Introduction

    Lecture 1: Introduction to the course

    Lecture 2: What is a Rule Engine?

    Lecture 3: How to Design Rules and When (not) to Use Drools

    Lecture 4: Introduction to Drools Language Syntax

    Chapter 2: 2. Example Code and Running it Locally

    Lecture 1: Structure of Example Code

    Lecture 2: Get example code running with IntelliJ IDEA Community Edition

    Lecture 3: Get example code running with Eclipse

    Lecture 4: Get example code running with Visual Studio Code (VS Code)

    Chapter 3: 3. Stateless Sessions

    Lecture 1: Stateless use cases

    Lecture 2: Step1: First two rules to validate passports

    Lecture 3: Step2: Split a rule

    Lecture 4: Step3: Bind a variable

    Lecture 5: Step4: Using the bound variable

    Lecture 6: Steps 5 and 6: Avoid repetitions

    Lecture 7: Stateless Sessions Summary

    Chapter 4: 4. Stateful Sessions

    Lecture 1: Introduction to Stateful Sessions

    Lecture 2: Step1: Modify the Object in the Middle of Session

    Lecture 3: Step2: Inference

    Lecture 4: Stateful Sessions Summary

    Chapter 5: 5. Cross Products – Drools Version of SQL JOIN

    Lecture 1: Introduction to Cross Products

    Lecture 2: Step1: Join Visa Application to a Passport

    Lecture 3: Fixed a bug in the upcoming lecture

    Lecture 4: Step2: Is the Passport Valid 6 Months After Trip?

    Lecture 5: Step3: Check that the property is not already with the given value

    Lecture 6: Pattern Matching and Cross Products Summary

    Chapter 6: Insert new facts and determine the execution order

    Lecture 1: Intro to Adding New Facts & Setting Execution Order

    Lecture 2: Rule Dialect Change

    Lecture 3: Note about upcoming Step

    Lecture 4: Step1: Create a New Fact and Insert it into the Session

    Lecture 5: Step2: Control execution order with salience

    Lecture 6: Step3: Control execution order with agenda groups

    Lecture 7: Step4: Use agenda groups with salience

    Lecture 8: Step5: Run a single rule from an activation group

    Lecture 9: Bonus Step! Step 6. Set Focus to Agenda Group In Drools Rule.

    Lecture 10: Summary of Adding Facts and Setting Execution Order

    Chapter 7: Insert a fact logically and check that the fact does not exist

    Lecture 1: Introduction to Logical Insertion of Facts and Checking the Fact Does Not Exist

    Lecture 2: Step1: Add Fact Using insertLogical()

    Lecture 3: Using the optional this keyword on the left-hand-side of MVEL rules

    Lecture 4: Step2: Create fact objects and check that fact does not exist

    Lecture 5: Step3: Replace Changing of the Objects with Fact Objects

    Lecture 6: Step4: Reduce the Number of Rules Needed by Eliminating Positive Cases

    Lecture 7: Section Summary

    Chapter 8: 8. Exists and Forall Conditional Elements

    Lecture 1: Intro to working with groups of objects

    Lecture 2: Step1: Rewrite visa application logic to support FamilyVisaApplications

    Lecture 3: Step2: Exists keyword introduced

    Lecture 4: Step3: Use forall to match a group of objects

    Lecture 5: Step4: Use forall to extract objects from a group based on min/max value

    Lecture 6: Step5: Forall with only one expression

    Lecture 7: Summary of Working with Groups of Facts

    Chapter 9: 9. Spreadsheet Decision Tables

    Lecture 1: Spreadsheet decision tables intro

    Lecture 2: A new GitHub repository for code examples

    Lecture 3: Basic layout of a spreadsheet decision table

    Lecture 4: Defining multiple action columns in a spreadsheet

    Lecture 5: Using formulas in a spreadsheet decision table

    Lecture 6: Set a custom DRL rule name and add a comment

    Lecture 7: How to place several rule tables in one spreadsheet

    Lecture 8: Multiple rule tables in one spreadsheet. Several parameters in a single cell.

    Lecture 9: Join multiple fact objects in a spreadsheet decision table

    Lecture 10: Using forall construct as a condition in spreadsheet decision tables

    Lecture 11: Condition without a pattern in a spreadsheet decision table

    Lecture 12: Set rule priority in a spreadsheet decision table

    Lecture 13: Sequential attribute in RuleSet

    Lecture 14: Using activation groups in spreadsheet decision tables

    Lecture 15: Drools sequential mode

    Lecture 16: Using custom labels in spreadsheet decision tables

    Lecture 17: Recap Spreadsheet Decision Tables

    Chapter 10: Rule templates and creating rules dynamically

    Lecture 1: Rule templates intro

    Lecture 2: Using Drools Rule Templates (DRT) for creating rules

    Lecture 3: Fetching template placeholder values from a tabular data source

    Lecture 4: Use Freemarker templates instead of deprecated Drools Rule Templates (DRT)

    Lecture 5: Declare intermediate types in DRL

    Lecture 6: How to declare enumerations in and read back objects of type declared in DRL

    Lecture 7: Create and insert objects into the session that have type declared in DRL

    Lecture 8: Rule templates recap

    Chapter 11: 11. Introduction to Complex Event Processing (CEP) with Drools

    Lecture 1: Complex Event Processing intro

    Lecture 2: Risks of using external services to pull data that the rules depend on

    Lecture 3: Using forall to find a suitable call that has waited the longest

    Lecture 4: Active and passive rule execution modes

    Lecture 5: Running rules repeatedly in passive mode. Using global variables.

    Lecture 6: Compose a list of events with collect keyword and apply filtering to the results

    Lecture 7: Calling halt(). Mixing active and passive rule execution modes.

    Lecture 8: Adding different timers to a rule

    Lecture 9: Stream event processing mode using a time-based sliding window

    Lecture 10: Declaring fact as an event and using a length-based sliding window

    Lecture 11: Using entry-point streams

    Lecture 12: Recap complex event processing

    Chapter 12: 12. What you need to know to write better Drools rules

    Lecture 1: Drools internals intro

    Lecture 2: Basic components of Drools rule engine

    Instructors

  • Master Drools Programming Learn How to Write Rules  No.2
    Juhan Aasaru
    Java Developer / Solution Architect
  • Rating Distribution

  • 1 stars: 28 votes
  • 2 stars: 46 votes
  • 3 stars: 302 votes
  • 4 stars: 741 votes
  • 5 stars: 645 votes
  • Frequently Asked Questions

    How long do I have access to the course materials?

    You can view and review the lecture materials indefinitely, like an on-demand channel.

    Can I take my courses with me wherever I go?

    Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!