`

根据输入执行代码块

    博客分类:
  • java
 
阅读更多

/**
 * f-road.com Inc.
 * Copyright (c) 2014 All Rights Reserved.
 */
package cn.com.froad.drools.points;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

/**
 * <pre>
 *  TODO:请添加注释描述
 * </pre>
 *
 * @author xueyunlong
 * @create 2015年5月11日 下午5:16:00
 * @modify
 * @since   JDK1.6
 */
public class PointRuleTest {
    public static void main(String[] args) throws IOException { 
        PointRuleEngine pointRuleEngine = new PointRuleEngineImpl(); 
        while(true){ 
            InputStream is = System.in; 
            BufferedReader br = new BufferedReader(new InputStreamReader(is)); 
            String input = br.readLine(); 
             
            if(null != input && "s".equals(input)){ 
                System.out.println("初始化规则引擎..."); 
                pointRuleEngine.initEngine(); 
                System.out.println("初始化规则引擎结束."); 
            }else if("e".equals(input)){ 
                final PointDomain pointDomain = new PointDomain(); 
                pointDomain.setUserName("hello kity"); 
                pointDomain.setBackMondy(100d); 
                pointDomain.setBuyMoney(500d); 
                pointDomain.setBackNums(1); 
                pointDomain.setBuyNums(5); 
                pointDomain.setBillThisMonth(5); 
                pointDomain.setBirthDay(true); 
                pointDomain.setPoint(0l); 
                 
                pointRuleEngine.executeRuleEngine(pointDomain); 
                 
                System.out.println("执行完毕BillThisMonth:"+pointDomain.getBillThisMonth()); 
                System.out.println("执行完毕BuyMoney:"+pointDomain.getBuyMoney()); 
                System.out.println("执行完毕BuyNums:"+pointDomain.getBuyNums()); 
                 
                System.out.println("执行完毕规则引擎决定发送积分:"+pointDomain.getPoint()); 
            } else if("r".equals(input)){ 
                System.out.println("刷新规则文件..."); 
                pointRuleEngine.refreshEnginRule(); 
                System.out.println("刷新规则文件结束."); 
            } 
        } 
    } 
}

分享到:
评论

相关推荐

    java 静态代码块通过类加载器获取资源文件例子

    首先,静态代码块是在类被加载到JVM(Java虚拟机)时执行的一段代码,它不依赖于类的实例创建,而是与类本身绑定。静态代码块常用于初始化静态变量或进行一次性的系统设置。例如,在本案例中,可能是在程序启动时...

    QueueEvent-队列化执行线程和代码块

    在Java开发中,"QueueEvent-队列化执行线程和代码块"是一个重要的概念,它涉及到了并发编程和事件处理。队列化执行是一种策略,用于管理多个线程的执行顺序,通常与事件驱动编程相结合,以确保线程安全和高效的工作...

    在vb程序将字符串转为vb代码执行

    这在处理用户输入或者根据运行时条件生成代码时非常有用。在VB中实现这一功能,我们可以利用VBA(Visual Basic for Applications)的内部函数或API调用来执行字符串中的VB代码。 在给出的代码示例中,我们看到一个...

    代码输入_代码输入_originbdj_labview_

    5. **运行代码**:完成代码编写后,可以通过运行LabVIEW程序来执行代码。如果代码有误,LabVIEW会在编译时或运行时给出错误提示。 6. **调试和优化**:如同任何编程语言一样,可能需要反复调试和优化代码以确保其...

    本资源使用 C 语言中 switch 语句作为示例代码,它根据用户输入的数字打印相应的星期天

    在这个代码中,我们使用 switch 语句来根据输入的数字选择特定的 case 代码块来执行,每个 case 代码块负责打印相应的星期天。如果输入的数字不在 1 到 7 的范围内,default 代码块将执行,向用户提供错误信息。 ...

    matlab 8控制流程和逻辑

    for循环可以遍历数组或矩阵中的元素,而while循环可以在满足特定条件时一直执行代码块。例如: ```matlab for i = 1:n % 执行代码块 end i = 1; while i % 执行代码块 i = i + 1; end ``` 函数 MATLAB中的函数...

    易语言置入代码例程 多项选择执行子程序

    首先,理解“子程序”是编程中的一个重要概念,它是一个独立的代码块,可以被多次调用并执行不同的任务。在易语言中,子程序通常用于封装特定功能,提高代码的复用性和可读性。多项选择执行子程序则意味着用户可以从...

    代码编辑器,显示行号

    CodeMirror是一款广泛使用的JavaScript代码编辑器,它专为在网页上提供高质量的代码输入环境而设计。这款编辑器以其灵活性和强大的功能集而备受开发者喜爱。以下是对标题、描述和标签所涉及知识点的详细说明: 1. *...

    flex bison的可执行代码

    Flex接受一个描述词法规则的输入文件(通常命名为lex.yy.c),该文件包含正则表达式和相应的C代码块,然后生成对应的词法分析器代码,最终编译成可执行文件。 Bison,全名是GNU Bison,是一个语法分析器生成器。...

    汇编程序与代码块装载

    在深入探讨汇编程序与代码块装载之前,我们首先需要理解CPU的工作原理和汇编语言的基础。CPU,即中央处理器,是计算机的核心组件,负责解释和执行计算机指令。x86系列CPU,由Intel和AMD制造,是目前PC机和Mac机上...

    C# 计算代码片执行时间

    在C#编程中,了解如何计算代码片的执行时间对于性能优化和理解代码效率至关重要。本文将深入探讨如何实现这一目标,以及相关的知识点。 首先,要精确测量代码执行时间,我们可以利用C#中的`Stopwatch`类。`...

    Java条件语句的用法实例代码.rar

    这里的`condition`是一个布尔表达式,如果其结果为`true`,则执行代码块中的语句;如果为`false`,则跳过这段代码。 2. if-else语句: 如果需要在条件为真时执行一个操作,为假时执行另一个操作,可以使用if-else...

    makefile,快速编译代码块文件操作

    使用makefile快速编译...再make编译.o文件,然后输入:make bin/project 创建可执行文件,将bin中的project拖出目录,最后将当前文件中lib的.so文件复制到 根目录下 /lib中,就可以./project执行文件,运行代码了·~~

    Excel-VBA宏编程实例源代码-获取焦点前执行代码.zip

    1. **事件驱动编程**:VBA编程的核心之一是事件驱动,这意味着当某个事件(如点击按钮、选中单元格等)发生时,相关的代码块会被执行。在这种情况下,我们需要关注`Workbook_Open`、`Sheet_SelectionChange`或`...

    小书匠语法说明之codeChunk1

    codeChunk 语法是小书匠语法的一种,主要用来执行代码块中的代码。该语法的特点主要受 rmarkdown 和 markdown-preview-enhanced 的启发,代码实现上主要参考了 markdown-preview-enhanced。主要用途就是实现直接执行...

    Arduino参考手册

    1. **if语句**:if语句用于基于特定条件执行代码块。基础形式为`if(条件) { 代码块 }`,如果条件为真(非零),则执行代码块中的语句。例如,可以检查模拟输入值是否小于500,如果满足条件,则执行相应的动作。 2. ...

    TIA博途中FC功能块的介绍与管脚定义.docx

    FC功能块是一种代码块,用于执行特定的运算或控制功能。FC功能块可以执行标准运算、工艺功能、数学计算等。FC功能块可以在程序中的不同位置多次调用,简化了对经常重复发生的任务的编程。 FC功能块的特点 ---------...

    Excel-VBA宏编程实例源代码-在数据因使用者的操作变化时执行代码.zip

    标题中的“Excel-VBA宏编程实例源代码-在数据因使用者的操作变化时执行代码”表明这是一个关于使用Excel的VBA(Visual Basic for Applications)宏语言来编写程序,以便在用户与电子表格交互时自动执行特定任务的...

    程序控制语句PPT学习教案.pptx

    程序控制语句是编程语言中用于控制程序流程的关键元素,它们允许我们根据不同的条件执行不同的代码块,或者反复执行特定的代码。以下是对PPT学习教案中涉及的几个主要知识点的详细解释: 1. **从键盘输入字符**: ...

Global site tag (gtag.js) - Google Analytics