Skip to end of metadata
Go to start of metadata

URule2技术交流QQ群及在线体验示例

在线体验示例:http://58.246.62.194:16808/urule-sample/ 为了不同用户操作互不影响,需要注册账号登录体验操作。

URule2技术交流QQ群:423339793

URule2规则引擎产品教学视频:http://pan.baidu.com/s/1c2xVB24,密码:9xgo


使用

       URule2规则引擎与spring boot集成好的项目我们可以到https://oss.sonatype.org上下载,打开https://oss.sonatype.org,搜索关键字“urule-springboot”下载最新的urule-springboot包即可。

       下载好urule-springboot的jar包,将这个jar放在一个非中文目录下,在我们系统的D盘下创建一个名为repo目录(用于存储URule资源库),打开操作系统命令行,切换到urule-springboot的jar包所在目录,输入如下命令即可运行由spring boot包装的URule控制台项目:

运行spring boot包

java -jar urule-springboot-[version].jar

       通过之前的章节介绍我们知道,URule控制台在运行时需要指定资源库存储的目录路径或存储到数据库时的配置文件,对于这里提供的urule-springboot包来说,默认情况下,它采用的是D盘的repo目录下存储资源库,所以我们需要创建在启动urule-springboot包前需要在D盘创建好repo目录。如果我们不想使用D:\repo目录来存储资源库,那么可以在运行命令后添加–urule.repository.dir参数来改变存储目录,如下所示:

更改默认资源库目录

java -jar urule-springboot-[version].jar --urule.repository.dir=C:\repo

       上面的命令中,通过在命令后面添加–urule.repository.dir参数,将资源库存储目录修改为C盘下的repo目录。

操作提示

以上命令要求我们的系统当中已安装好1.7或以上版本的JDK,同时也已配置好JDK环境参数,否则执行上述命令将会报找到不命令关键字的错误。

        启动好后,打开浏览器,输入http://localhost:8080,就可以看到URule提供的控制台页面。

关于应用服务器

URule提供的spring boot集成包,采用的是Tomcat8.5.5版本,默认采用的是8080端口号,如果需要更改,那么可以在启动命令后添加--server.port参数,比如--server.port=80,这就表示采用80端口,启动后,直接浏览http://localhost就可以看到URule控制台,就不需要再输入端口号了。启动命令更多参数可以到http://docs.spring.io/spring-boot/docs/1.4.1.RELEASE/reference/htmlsingle/上查看。

二次开发

       默认提供的URule与spring boot集成的版本功能相对简单,如果您需要URule与spring boot集成的版本能实现在数据库中存储资源库、为URule控制台添加安全限制等,同时您又熟悉spring boot,那么可以到https://github.com/youseries/urule/tree/master/urule-springboot上下载URule与spring boot集成的项目源码做二次开发即可。

       可以看到这个项目比较简单,除了与spring boot相关的一些配置外,在com.bstek.urule.springboot包中只有四个类。Application类是spring boot启动的入口类,在这个类中,我们通过ImportResource这个annotation加载了URule Console的spring配置文件classpath:urule-console-context.xml,如下源码所示:

Application源码

       IndexServlet类是一个普通的Servlet,用来实现当用户输入根路径时可以直接跳到urule/frame这个页面。

       URuleServletRegistration类中注册了两个Servlet,一个是IndexServlet,另一个就是URuleServlet,这个Servlet是URule Console入口,所以必须要注册,URuleServletRegistration类源码如下:

URuleServletRegistration源码


       最后一个类是PropertiesConfiguration,但这个类实际没用被用到,因此其类级别的@Component被我注释掉了,所以这个类实际上是个示例类,用来说明如果我们需要覆盖URule中默认参数该怎么做。比如上面的代码当中,如果我们需要采用数据库来存储资源库,那么就可以通过urule.repository.xml属性来指定一个数据库配置的xml。做好之后打开其类级别的@Component注释即可,这样spring boot在启动时就会加载这个类,从而实现将URule中默认参数覆盖的目的。

PropertiesConfiguration类源码
Labels