配置web.xml
设置DBRuleServerServlet的参数xmltype的值为json,如下:
<servlet>
<servlet-name>DBRuleServerServlet</servlet-name>
<servlet-class>com.flagleader.webserver.DBRuleServerServlet</servlet-class>
<init-param>
<param-name>xmltype</param-name>
<param-value>json</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>DBRuleServerServlet</servlet-name>
<url-pattern>/servlet/dbruleservices.servlet</url-pattern>
</servlet-mapping>
设置好上述才能调用:
http://localhost:8880/webrule/servlet/dbruleservlet.servlet
查看 Java类通过Servlet调用-xml格式 的2到7小点操作,即(2、配置说明 3、解析web.xml 4、编译文件存放目录 5、登录webrule管理平台 6、webrule管理平台 添加任务和添加服务 7、查看任务和服务)
传输数据格式类型
参数streamtype默认为1,可以不进行配置,可以根据需求配置传输数据格式类型,0表示原始字符串格式。1表示加密压缩字符串。2表示压缩字符串。3表示压缩字节。4表示GZIP压缩流。客户端传输时通过Property.getInstance().setServerSendtype(...)设置传输数据格式类型,默认为1,即Property.getInstance().setServerSendtype(Property.ENCRYZIPSTRINGSEND),其中Property.RAWSEND的值为0,Property.ZIPSTRINGSEND的值为2, Property.ZIPBYTESEND的值为3,Property.GZIPSEND的值为4,其中客户端传输数据格式类型为1时,参数streamtype的参数值可以是0或1,在没有设置参数streamtype的情况下,内部约定为1,如下:
<servlet>
<servlet-name>DbServletServlet</servlet-name>
<init-param>
<param-name>streamtype</param-name>
<param-value>1</param-value>
</init-param> <servlet-class>com.flagleader.webserver.DbServletServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DbServletServlet</servlet-name>
<url-pattern>/servlet/dbruleservlet.servlet</url-pattern>
</servlet-mapping>
新建版本库
访问webrule下的servser的index.jsp,即
http://localhost:8880/webrule/server点击选项卡“规则执行版本”,右键点击左边窗体“规则库版本”,选择“新建版本库”,如下图:
弹出窗体“工程信息”,工程名称文本框中输入1.1,如下图:
查看新建的1.1版本库,如下图:
复制E:\rscfile\1.1目录下的student文件夹到
D:\VisualRules\Tomcat\webapps\webrule\WEB-INF\rsc\1.1目录下,如下图:
添加java测试类
在java工程中添加一个java类,名为Tes7.java,其内容编辑如下:
package com.flagleader;
import java.util.List;
import com.flagleader.engine.Property;
import com.flagleader.engine.RuleService;
import com.flagleader.json.JsonServerServletFactory;
public class Test7 {
public static void main(String[] args) {
try {
//设置加密方式 默认等于 Property.ENCRYZIPSTRINGSEND
Property.getInstance().setServerSendtype(Property.ENCRYZIPSTRINGSEND);
// 工厂模式,该接口可以用在本地调用,以及服务调用
RuleService engine = new JsonServerServletFactory("http://localhost:8880/webrule/servlet/dbruleservlet.servlet").getRuleService();
//执行哪个版本下的编译文件
engine.setLibraryName("1.1");
// 以dto形式为规则传参
Student student = new Student(1, "李丽", 12, '男', "六年级", "无");
// 执行规则,其中"student.add"为规则全名,student为传入参数
engine.executeBeans("student.add", student);
// 判断engine.get("studentList")是不是集合类型
if (engine.get("studentList").getClass().isAssignableFrom(
java.util.ArrayList.class)) {
// 执行完规则后,获取数据,"studentList"必须和规则中取内存表数据的变量名一致
List list = (List) engine.get("studentList");
// 由于规则中采用的是list<list>类型,需要做两次转换
List list1 = (List) list.get(0);
// 循环次数为对象中字段个数
for (int i = 0; i < 6; i++) {
System.out.print(list1.get(i) + "\t");
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
执行java测试类
点击执行后,可以看到如下结果:
说明已经调用了student.add规则包,并且根据传入的参数,返回处理结果以list<list>形式展示。
同理,任何的其他java类,只需加入上述的代码,即可完成调用规则包的工作。
- 大小: 135.2 KB
- 大小: 107.4 KB
- 大小: 96 KB
- 大小: 113.6 KB
- 大小: 159.7 KB
分享到:
相关推荐
VisualBasic6.0编写的DLL<br><br>封装函数过程一览表----按照分类及字母顺序<br>◆封装的10个过程,没有返回值◆<br>01、AboutAndHelp-----显示帮助信息<br>02、ExitOs-----------注销、重启和关机<br>03、Kill...
<br>UltraEdit 7.2<br>WebGain Studio 4 with VisualCafe<br>Forte for Java开发指南<br>Dreamweaver UltraDev<br>IBM NetObjects ScriptBuilder3.0<br>使用HomeSite加速JSP的开发<br>Java2的安全新特性下的Applet...
Java版精华区 <br>含java jsp及js等精华帖子合集<br>适合收藏 查询<br><br>序号 精华区主题 <br>--------------------------------<br> 1. [目录]Java教程 <br> 1. [目录]Java语言教程 <br> 2. [目录]来自java的传说...
* Home Page<br>* http://visual-mingw.sourceforge.net/<br>*<br>* Mailing list<br>* http://sourceforge.net/mail/?group_id=46778<br>* visual-mingw-general@lists.sourceforge.net<br>*<br>* License<br>* ...
Express Editions)<br><br>Microsoft Visual Studio .NET 2003 <br>...Visual C++ 5.0<br>Microsoft Visual Studio 97<br>Microsoft eMbedded Visual Tools 4.0<br>Microsoft eMbedded Visual Tools 3.0<br><br>
Express Editions)<br><br>Microsoft Visual Studio .NET 2003 <br>...Visual C++ 5.0<br>Microsoft Visual Studio 97<br>Microsoft eMbedded Visual Tools 4.0<br>Microsoft eMbedded Visual Tools 3.0<br><br>...
Professional UML with Visual Studio .NET—Unmasking Visio for Enterprise Architects 第一部分<br>Table of Contents <br> Professional UML with Visual Studio .NET—Unmasking Visio for Enterprise ...
Professional UML with Visual Studio .NET—Unmasking Visio for Enterprise Architects 第二部分<br>Table of Contents <br> Professional UML with Visual Studio .NET—Unmasking Visio for Enterprise ...
<br>二、Java与C#<br>三、C#的主要特征<br>四、安装运行环境<br>五、C#编辑器<br>六、C#的程序结构<br>七、C#和名称空间<br>八、C#中一个经典例程的编写与编译<br>九、C#编程实战演习ABC<br> 1、使用Visual Studio ...
<br><br>原文件说明:<br><br>Compuware DriverStudio – DriverSuite<br>Version 3.2<br><br>Version 3.2 VisualStudio 2005 Integration fix.<br>The purpose of this update is to allow DriverStudio – ...
” <br>实例7 组件化“Welcome”程序 <br>实例8 网络上的“Hello World” <br>实例9 Ref、Out与Params描述符的应用 <br>实例10 C#自动内存管理的应用 <br>实例11 一个有趣栈类的实现 <br>实例12 垃圾收集器管理与...
” <br>实例7 组件化“Welcome”程序 <br>实例8 网络上的“Hello World” <br>实例9 Ref、Out与Params描述符的应用 <br>实例10 C#自动内存管理的应用 <br>实例11 一个有趣栈类的实现 <br>实例12 垃圾收集器管理与...
1,01.zip<br>Output<br>显示所有的调试信息(5KB)<END><br>2,02.zip<br>Some general debugging tips<br>一般的调试技巧(11KB)<END><br>3,03.zip<br>Debugging ISAPI extension<br>调试ISAPI扩展(4KB)<END><br>4,04....
本人不想使用庞大的Visual <br>Studio,但为了能编辑和使用<br>java,不得不开发了这一款小工具<br>,可以编译java程序,但是必须<br>安装好Java环境.<br><br> 本编辑器有如下功能或者是<br>如下优点:<br> 1,关键字...
<br>Visual C++项目开发实例导航 <br><br>【作 者】章五一 <br>【丛 书 名】 精品实例导航丛书 <br><br><br>【内容简介】<br>本书主要以七个典型项目工程的开发为例,探讨了Visual C++在各个领域中的实际应用,介绍...
25.zip<br>SMTP MFC Classes<br>SMTP协议类(6KB)<END><br>103,26.zip<br>Pre-emptive Multithreading Web Spider<br>多线程的网络蜘蛛(7KB)<END><br>104,27.zip<br>Updated SMTP Class<br>更新的SMTP类(5KB)<END><br...
splash.zip<br>通过自己的线程在Splash对话框中显示文字(136KB)<END><br>6,res_dlg.zip<br>大小可调的对话框(21KB)<END><br>7,splitter.zip<br>可变的分割视图(58KB)<END><br>8,anicon1.zip<br>在窗口的标题条上显示...
二次开发语言 Borland C++ Builder、Visual C++<br>控件形式 动态链接库(可按需要定制其他形式)<br>二维码种类 QR Code GB/T 1884-2000<br>二维码尺寸范围 21×21-41×41<br>编码数据格式 数字编码 数字0-9<br>...
Exception.zip<br>文件异常处理的一个例子<2030kb><END><br>25,filefind.zip<br>在一个特定目录下查找文件的例子<1850kb><END><br>26,AddBook.zip<br>利用文件存盘的地址本管理小程序<2040kb><END><br>27,HexView....
8<br><br>0018 有效利用Visual Studio 2005附带程序 8<br><br>0019 有效使用MSDN帮助 9<br><br>0020 如何设置MSDN帮助 9<br><br>1.4 其他 10<br><br>0021 如何添加项目引用 10<br><br>0022 如何添加Web...