成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在Java中使用groovy語(yǔ)言作為動(dòng)態(tài)規(guī)則表達(dá)式

開(kāi)發(fā) 后端
由于在工作流設(shè)計(jì)中需要為條件分支設(shè)定條件表達(dá)式,所以需要可以動(dòng)態(tài)執(zhí)行的語(yǔ)言腳本作為工作流的規(guī)則引擎.

由于在工作流設(shè)計(jì)中需要為條件分支設(shè)定條件表達(dá)式,所以需要可以動(dòng)態(tài)執(zhí)行的語(yǔ)言腳本作為工作流的規(guī)則引擎.工作流條件分支純粹使用sql腳本肯定是不行的,經(jīng)過(guò)試驗(yàn),groovy的腳本可以返回為java接受的變量.在具體的工作流實(shí)現(xiàn)中,我們既可以把groovy的腳本單獨(dú)存放在文本文件,也可以將腳本直接存放在數(shù)據(jù)庫(kù)中,在使用的時(shí)候再取出來(lái),當(dāng)然,可可以放在xml文件中.

以下是java調(diào)用groovy腳本的實(shí)例:

 

  1. package org.openjweb.core.groovy.test;  
  2.  
  3. import groovy.lang.GroovyClassLoader;  
  4. import java.io.File;  
  5.  
  6. public class InvokeGroovy {  
  7.  public static void main(String[] args) {  
  8.   ClassLoader cl = new InvokeGroovy().getClass().getClassLoader();  
  9.   GroovyClassLoader groovyCl = new GroovyClassLoader(cl);  
  10.   try 
  11.   {  
  12.    //從文件中讀取  
  13.    //Class groovyClass = groovyCl.parseClass(new File("D:/project/openjweb/src/java/org/openjweb/groovy/Foo.groovy"));  
  14.    //直接使用Groovy字符串,也可以獲得正確結(jié)果  
  15.    //Class groovyClass = groovyCl.parseClass("package org.openjweb.groovy; \r\n import org.openjweb.core.groovy.test.IFoo;\r\n class Foo implements IFoo {public Object run(Object foo) {return 23}}");  
  16.    Class groovyClass = groovyCl.parseClass("package org.openjweb.groovy; \r\n import org.openjweb.core.groovy.test.IFoo;\r\n class Foo implements IFoo {public Object run(Object foo) {return 2+2>1}}");//這個(gè)返回true  
  17.      
  18.     IFoo foo = (IFoo) groovyClass.newInstance();  
  19.     System.out.println(foo.run(new Integer(2)));  
  20.   } catch (Exception e) {  
  21.    e.printStackTrace();  
  22.   }  
  23.  }  
  24. }  
  25.  

 

下面是Foo.groovy的文本:

 

  1. package org.openjweb.groovy;  
  2. import org.openjweb.core.groovy.test.IFoo;  
  3. class Foo implements IFoo  
  4. {  
  5.     public Object run(Object foo)  
  6.     {  
  7.        
  8.        return 3+2 
  9.     }  
  10. }  
  11.  

 

從上面的代碼看出,可以直接執(zhí)行字符串的groovy腳本,運(yùn)行后返回運(yùn)算結(jié)果,例如2+2>1會(huì)返回true.

使用Groovy或 Jruby動(dòng)態(tài)語(yǔ)言腳本作為規(guī)則引擎解決方案將會(huì)越來(lái)越普及.

責(zé)任編輯:金賀 來(lái)源: simpleframework博客
相關(guān)推薦

2022-01-16 07:48:33

腳本Bash 工具

2009-07-03 17:52:17

JSP2.0

2023-10-07 08:25:09

Java處理工具正則表達(dá)式

2009-06-15 17:24:59

Groovy正則表達(dá)式

2022-12-28 08:03:02

Groovy語(yǔ)法GPath

2022-05-07 12:21:14

工具分布式

2009-03-16 14:01:24

正則表達(dá)式函數(shù)SQL

2018-10-08 08:00:00

前端ReactJavaScript

2023-04-17 19:53:37

編程正則表達(dá)式

2024-12-25 15:09:38

Python字符串函數(shù)

2011-09-07 09:51:27

Javascript

2010-08-09 14:43:25

Flex正則表達(dá)式

2010-11-12 13:20:31

SQL Server

2010-03-25 18:25:36

Python正則表達(dá)式

2009-04-23 11:24:44

SQL正則表達(dá)式查詢

2023-07-31 07:43:07

Java語(yǔ)言表達(dá)式變量

2012-05-08 13:29:01

VB

2024-10-09 16:35:20

Python正則表達(dá)式

2010-08-09 14:14:13

Flex正則表達(dá)式

2009-06-15 16:53:44

Groovy字符串gstring
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 99久久精品国产一区二区三区 | 特级毛片爽www免费版 | 黄色大片在线播放 | 日韩欧美不卡 | 亚洲成人福利在线观看 | 日本又色又爽又黄又高潮 | 97久久超碰 | 久久国产精品网 | 天天激情综合 | 欧美日韩综合一区 | 国产探花在线精品一区二区 | 日韩欧美国产精品一区 | 久久精品久久久久久 | 国产性色视频 | 国产精品久久性 | 粉嫩高清一区二区三区 | 久久久久免费精品国产 | 久在线观看 | 国产精品九九视频 | 亚洲天堂免费 | 蜜桃精品噜噜噜成人av | avav在线看 | 高清视频一区二区三区 | 综合久久综合久久 | 在线中文字幕日韩 | 精品网站999 | 久久精品视频免费看 | 成人午夜黄色 | 99re6热在线精品视频播放 | 免费看黄色视屏 | 亚洲免费精品一区 | 中文字幕91 | 亚洲成人av在线播放 | 韩国av电影网 | 精品国产黄a∨片高清在线 成人区精品一区二区婷婷 日本一区二区视频 | 日韩欧美一区在线 | 三级成人在线 | 九九热精品在线视频 | 成年精品 | 午夜精品影院 | 欧美电影在线观看网站 |