/**
* 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("刷新规则文件结束.");
}
}
}
}
- 浏览: 261826 次
- 性别:
- 来自: 上海
-
文章分类
- 全部博客 (187)
- spring (10)
- jquery (14)
- js (18)
- java (44)
- freemarker (7)
- 框架介绍 (1)
- tomcat (4)
- oracle (7)
- 喜欢的诗文 (4)
- linux (19)
- nokia (1)
- 那些事 (1)
- apache (3)
- dom4j (1)
- SOA (1)
- 企业架构 (2)
- baidu (1)
- svn (1)
- 测试 (4)
- liunx (0)
- memcahce (1)
- mysql (25)
- maven (4)
- 推广 (1)
- 网络 (1)
- vpn (1)
- drools (1)
- mongodb (1)
- redis (3)
- xlightweb (1)
- wifi (1)
- 学习资料 (1)
- git (1)
- 系统设计 (1)
- springboot (1)
- 自考 (0)
最新评论
-
zuo_qin_bo:
if(df==null){ //这个地方并发多的情况 ...
ThreadLocal解决dateFormat多线程错误 -
kongnan93:
好文!赞一个!!!!
jquery blockUI 居中显示 -
cxc_110928:
如果加上不能出现连续的数字或者字母 如 1234 abcd ...
用java 匹配一个数字和字母密码的正则表达式 -
wzwahl36:
http://www.atool.org/json2javab ...
JSON和JAVA的POJO的相互转换
发表评论
-
折半查找法
2019-06-17 18:11 329public static void main(String[ ... -
js 加密 java解密
2017-12-05 16:27 829https://github.com/noisyle/cr ... -
java工程师成长之路
2017-03-04 17:43 563一、基础篇 1.1 JVM 1.1.1. J ... -
java 启动jar
2017-03-04 15:40 1614#!/bin/sh PRG="$0&qu ... -
ThreadLocal解决dateFormat多线程错误
2016-09-19 17:44 2142出处 http://www.blogjava.net/ki ... -
设计模式
2016-06-02 17:11 446http://www.cnblogs.com/xing9010 ... -
list分页
2016-05-11 09:56 383//分批保存数据 if(null!=aassetO ... -
java装饰器模式
2015-03-17 18:00 835java装饰器模式 意图:动态的将责任附加到对象上什么 ... -
java适配器模式
2015-03-17 17:54 629定义:属于结构型模式,其主要作用是将一个类的接口转换成客户 ... -
Java垃圾回收机制
2015-02-04 09:43 725垃圾收集GC(Garbage Coll ... -
jvisualvm结合jstatd进行远程监控
2015-01-27 16:17 821jvisualvm是Jdk自带的,具体点,据说是jdk1 ... -
最佳线程数总结
2015-01-26 11:53 0最佳线程数: 性能压 ... -
线程dump
2015-01-26 11:19 0Java 的线程 线程是指 ... -
几种阻塞队列
2015-01-26 11:11 0转自:http://blog.csdn.net/yydcj/ ... -
线程池的原理及实现
2015-01-26 10:53 6851、线程池简介: ... -
线程同步通信技术-wait notify 用法
2014-10-22 20:58 685/** * * <pre> * 子线程 ... -
Cisco VPN Client 442
2014-10-18 21:17 162典型的Cisco VPN Client 442 错误,之前的 ... -
JDK安装
2014-10-18 15:15 711学习Java 开发的第一步就是构建开发环境,JDK(Java ... -
MultiThreadHttpClient
2014-09-15 17:05 429package com.froad.points.bankse ... -
java中的IO整理
2014-09-14 14:52 792写在前面:本文章基本覆盖了java IO的全部内容,java ...
相关推荐
在这个代码中,我们使用 switch 语句来根据输入的数字选择特定的 case 代码块来执行,每个 case 代码块负责打印相应的星期天。如果输入的数字不在 1 到 7 的范围内,default 代码块将执行,向用户提供错误信息。 ...
使用makefile快速编译...再make编译.o文件,然后输入:make bin/project 创建可执行文件,将bin中的project拖出目录,最后将当前文件中lib的.so文件复制到 根目录下 /lib中,就可以./project执行文件,运行代码了·~~
为了使用汇编语言,必须熟悉CPU和寄存器,还...其后,把MY-OS的代码放到第二个物理扇区,再编写装载此代码块的汇编程序放到引导扇区;接着介绍COM可执行文件的生成和使用,最后简介实模式调试工具debug的基本使用方法
C语言中分支结构是一种非常基本但非常重要的编程结构,它允许程序根据条件执行不同的代码块。在C语言中,分支结构有三种基本类型:if语句、if-else语句和switch语句。这些语句的使用可以使程序更加灵活和智能。 1....
if 语句是最基本的条件语句,用于根据条件执行代码块。例如: ``` if True: print('Hello, World!') ``` 这段代码将输出 "Hello, World!",因为条件 True 是成立的。 3. if...else 语句的使用 if...else 语句是 ...
这个例子展示了控制结构的使用,可以根据不同的条件执行不同的代码块。 知识点3: 函数 在第三道题目中,我们使用了switch语句来实现多个分支的逻辑判断,并使用了printf函数来输出结果。这个例子展示了函数的使用...
3. 构造基本块:根据入口语句和出口语句,将中间代码序列分割成多个基本块,并删除不属于任何基本块的语句。 二、流程示意图 流程示意图是对基本块划分的可视化表示,使用四元式序列来描述基本块之间的跳转关系。...
在这之前先了解下什么是事件驱动编程 传统的编程是如下线性模式的: 开始--->代码块A--->代码块B--->代码块C--->代码块D--->......--->结束 每一个代码块里是完成各种各样事情的代码,但编程者知道代码块A,B,C,D......
* while 语句可以根据条件执行代码块,直到条件不成立。 * for 语句可以遍历列表、元组、字典等,执行代码块。 四、函数 * Python 的函数可以封装代码块,提供了代码的重用性。 * 函数可以有多个参数,可以返回值...
* switch 语句:用于根据不同的条件执行不同的代码块。 * while 语句:用于重复执行指定的代码块,直到条件不再满足。 * do...while 语句:用于重复执行指定的代码块,直到条件不再满足。 * break 语句:用于跳出...
第一步:选中要执行的代码或者代码块 第二步:右键 选择执行所选内容 第三步:我们可以发现命令行窗口出现了以下的显示 同时在工作区出现了变量a的值,如下所示: 这就是最基本的选中执行的操作 1-2 输出、输入...
if 语句用于判断条件是否成立,如果条件成立,则执行代码块。例如: ``` x = 5 if x > 10: print("x 是正数") ``` 2. if-else 语句 if-else 语句用于判断条件是否成立,如果条件成立,则执行 if 代码块,否则执行 ...
* for 语句:用于循环执行代码块,直到条件不满足为止。 * switch 语句:用于根据不同的值执行不同的代码块。 * while 语句:用于循环执行代码块,直到条件不满足为止。 * do...while 语句:用于循环执行代码块,...
计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。 比如,输入用户年龄,根据...如果 if 语句判断为 True,就会执行这个代码块。 缩进请严格按照Python的习惯写法:==4个空格==,不要使用Tab,更不要混合T
最后,我们需要编写一个主函数来控制程序的执行流程。 在编写代码时,我们需要注意以下几点: * 使用const static int Maxn = 20;来定义图案的最大尺寸。 * 使用using namespace std;来使用标准库中的函数和变量。...
当用户选择的选项与某个`case`后面的常量值匹配时,程序会执行对应的代码块。在每个`case`代码块的末尾,我们使用`break`语句来跳出`switch`语句。如果用户的选择没有匹配到任何一个`case`,则会执行`default`代码块...
条件语句和循环语句:条件语句用于根据条件的不同执行不同的代码块,可以通过elif和else语句组合使用以实现复杂的逻辑判断。循环语句用于重复执行一段代码直到满足某个条件为止,Python提供了两种循环方式,可以...
Catch语句允许我们定义当Try代码块发生错误时,所执行的代码块。Try和Catch语句是成对出现的。 Throw语句允许我们创建自定义错误。正确的技术术语是:创建或抛出异常(exception)。如果把Throw与Try和Catch一起...
代码块中保留一组代码,同一个代码块中的代码,要么都执行,要么都不执行。 代码块以缩进开始,知道代码恢复到之前的缩进级别是结束。 代码块是一种为代码分组的机制。 2.input函数 该函数用来获取用户的输入 input...