在上面介绍利用JSR94的api使用的章节中,我们使用的具体引擎的实现是一个商业产品,如果想了解Drools的使用,这里有一份入门的参考文章:http://blog.csdn.net/tigerflower/archive/2006/09/06/1185922.aspx。由于关于blaze的文章很少,这里根据经验,简单介绍一下它的实现。
blaze是由blazeSoft公司提供的产品,由于是商业产品,因此专门IDE非常强大,现在流行的版本是Blaze Advisor5.5和Blaze Advisor6.x.。blaze的开发模式有编程式开发的好处,也有声明式开发的好处。在开发的IDE,你看到 ...
上面说到,目前在市场上留下多种规则引擎的产品,同样有多种的规则引擎语言,存在兼容性的问题。因此,我们必须提供一个统一的,标准的接口,来实现规则引擎的具体实现与业务应用系统之间的解耦,就像JDBC能够适应多种数据库一样,JSR 94也就顺势而生。当然,由于在语言级的标准路还很长,因此JSR 94只是在java中接口级别的标准。它的出现可以避免在更换实现产品时,必须重写应用程序逻辑和API调用的噩梦。JSR 94的官方网站为:http://jcp.org/en/procedures/jcp2
SR94 的规则引擎API介绍
我们先来看看包内主要的类,如图jsr94.bmp。
我们可以看到,包 ...
最近刚刚接触JAVA的规则引擎,一般的系统而言,业务不是非常复杂,而且变化少,因此很少采用什么规则引擎,最近接触了一个规则引擎的系统,是使用BlazeSoft公司的Blaze来实现的,自己对它正在了解中,把具体的实现相关的知识,写下来,以待进一步的整理。
本系列文章主要先人云亦云地介绍一下规则引擎的背景知识(本人了解规则引擎不多),接着介绍JSR94的API和具体的实现,以及blaze自己提供的java api的简单介绍和实现,然后介绍一下BlazeSoft公司的blaze的搭建、开发和部署,以及在java环境中的集成,简单介绍一下Blaze使用的规则语言,srl的语法。
规则引擎的简介
...
一篇很好的介绍swing下的线程问题的文章,原理跟各个方面都提及到了进行swing编程不可能不遇上线程问题
Swing API的设计目标是强大、灵活和易用。特别地,我们希望能让程序员们方便地建立新的Swing组件,不论是从头开始还是通过扩展我们所提供的一些组件。
出于这个目的,我们不要求Swing组件支持多线程访问。相反,我们向组件发送请求并在单一线程中执行请求。
本文讨论线程和Swing组件。目的不仅是为了帮助你以线程安全的方式使用Swing API,而且解释了我们为什么会选择现在这样的线程方案。
本文包括以下内容:
单线程规则:Swing线程在 ...
今天在在web.xml里加入了过滤类,错误信息如下:
May 11, 2006 11:42:13 AM org.apache.catalina.core.StandardContext start
SEVERE: Error filterStart
May 11, 2006 11:42:13 AM org.apache.catalina.core.StandardContext start
SEVERE: Context startup failed due to previous errors
2005-11-20 14:19:37 org.apache.cat ...
1.多线程中有主内存和工作内存之分, 在JVM中,有一个主内存,专门负责所有线程共享数据;而每个线程都有他自己私有的工作内存, 主内存和工作内存分贝在JVM的stack区和heap区。
2.线程的状态有'Ready', 'Running', 'Sleeping', 'Blocked', 和 'Waiting'几个状态,
'Ready' 表示线程正在等待CPU分配允许运行的时间。
3.线程运行次序并不是按照我们创建他们时的顺序来运行的,CPU处理线程的顺序是不确定的,如果需要确定,那么必须手工介入,使用setPriority()方法设置优先级。
4.我们无从知道一个线程什么时候运行,两个 ...
Check to see if the current operating system is a Windows OS:
public static boolean isWindows()
{
return System.getProperty("os.name").indexOf("Windows") != -1;
}
Check to see if the current Java Virtual Machine is made by Microsoft:
public static boolean isMSJVM()
{
re ...
在接触spring 和hibernate的时候就不断看到有人提到大名鼎鼎的jive论坛了,可一直没有时间深入研究,现在下载了源代码,好好研究研究......
Java中ThreadLocal的设计与使用. Linuxmine收集整理作者:linux 宝库(http://www.linuxmine.com) 时间:2006-09-02 收藏本站 早在Java 1.2推出之 时,Java平台中就引入了一个新的支持:java.lang.ThreadLocal,给我们在编写多线程程序 时提供了一种新的
http://www.linuxmine.com/44172.html
早在Java 1.2推出之时,Java平台中就引入了一个新的支持:java.lang.ThreadLocal,给我们在编写多线程程序时提供了一种新的选择。使用这个工具类可以很简 ...
最近使用hibernate开发公司内部使用的软件工程管理和代码同步纪录的软件
遇到一个跨7个表查询的功能,查询比较复杂,弃用基于实体查询,转用本地sql查询
建立一个视图:vw_medcfiles
视图有depot_path,changlist_no字段
depot_path有重复值时,取changlist_no最大的纪录。
后来我用语句:
select * from vw_medcfiles v where (V.depot_path,v.changelist_no) in ( SELECT t1.depot_path,max(t1.changeli ...
文章转自http://www.blogjava.net/caixuetao/articles/60631.html假设要通过stuName查询一个学生Student记录,可以如下: DetachedCriteria dc = DetachedCriteria.forClass(Student.class);
dc.add(Restrictions.like("stuName", stuName, MatchMode.ANYWHERE));
如果要通过Student的Team的teamName查询一个Student记录,很多人都会这么写:
DetachedCriter ...
一个笔记:
1 关于marshal类:(对映射文件的处理)
Marshaller类用来将一个Java类转换为XML数据。UnMarshaller类转换一个XML文档成Java对象。
对映射文件处理的简单例子的代码片断:
Marshaller marshaller;
Mapping _mapping;
PrintWriter writer;
MyClass myObject;
………………
// 创建marshaller对象并载入Mapping映射规则
marshaller = new Marshaller( writer );
marshaller.setMapping( _m ...
- 浏览: 108026 次
- 性别:


- 详细资料
搜索本博客
我的相册
P2110296
共 45 张
共 45 张
链接
最新评论
-
续 一位朋友辞职引起的思 ...
好文谢谢,指路人啊
-- by mackmack -
续 一位朋友辞职引起的思 ...
文章总结的真是好。准备创业的哥们建议doul都来看看,看自己是不是真的准备好了迎 ...
-- by hellofuck -
致陈年叔
这么一个有才的人,怎么会有这种心结呢?
-- by Ethip -
续 一位朋友辞职引起的思 ...
作者看来是对现在的IT行业有很长时间的研究吧,不过,现实就是这样。很残酷! 人在 ...
-- by dtctve67 -
Tomcat启动时报filterStar ...
tomat/server/lib目录下的commons-digester.jar ...
-- by wangyazhen






评论排行榜