freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

drools-expert-docs52簡(jiǎn)體中文版(文件)

 

【正文】 望消除報(bào)警,所在, not 關(guān)鍵字再次使用。 rule Status output when things are ok when not Alarm() not Sprinkler( on === true ) then ( Everything is ok )。 KnowledgeBuilder kbuilder = ()。 StatefulKnowledgeSession ksession = ()。調(diào)用 ()讓規(guī)則引發(fā),但是沒(méi)有火災(zāi),所以它只發(fā)送一個(gè)健康信息。 ( name, room )。 } () Everything is ok 我們現(xiàn)在創(chuàng)建兩個(gè)火災(zāi),并插入它們;這次為返回的 FactHandle 保存一個(gè)引用。 Fire officeFire = new Fire( ( office ) )。 Raise the alarm Turn on the sprinkler for room kitchen Turn on the sprinkler for room office 過(guò)了一會(huì)兒,火災(zāi)被撲滅, Fire 實(shí)例被撤銷。 ()。 ( kitchenFireHandle )。 FactHandle officeFireHandle = ( officeFire )。 在引擎中使用了火災(zāi),一旦調(diào)用 fireAllRules(),報(bào)警被引發(fā),各自的噴頭會(huì)被打開(kāi)。 Sprinkler sprinkler = new Sprinkler( room )。 MapString,Room name2room = new HashMapString,Room()。四個(gè) Room 對(duì)象被創(chuàng)建,并被插入,以及為每個(gè)房間創(chuàng)建了一個(gè) sprinkler 對(duì)象。 if ( () ) { ( ().toString() )。然后,我們可以構(gòu)建知識(shí)庫(kù),如前面的一樣,只是要使用了新的 文件。 ( Cancel the alarm )。 rule Raise the alarm when we have one or more fires when exists Fire() then insert( new Alarm() )。 ( Turn off the sprinkler for room + $() )。 Drools 也支持一階邏輯,允許你查看數(shù)據(jù)的集合。無(wú)狀態(tài)會(huì)話通常不使用推理,所以引擎不必知道數(shù)據(jù)的改變。 end 相反,無(wú)狀態(tài)會(huì)話使用標(biāo)準(zhǔn)的 Java 語(yǔ)法修 改一個(gè)字段,在上面的規(guī)則中,我們使用了 modify 語(yǔ)句,它充當(dāng)一種 with語(yǔ)句。該規(guī)則使用了一個(gè)有關(guān) Fire 對(duì)象的 room字段的綁定來(lái)約束匹配給那個(gè)房間的噴頭,它當(dāng)前是關(guān)閉的。但是,一個(gè)房子有多個(gè)房間,所以規(guī)則必須表示對(duì)象間的關(guān)系,比如一個(gè)噴頭是在一個(gè)確定的房間中。 private boolean on。 我們利用一個(gè)引發(fā)火警的例子闡明監(jiān)測(cè)用例。 有狀態(tài)知識(shí)會(huì)話 有狀態(tài)會(huì)話存活更長(zhǎng),允許隨時(shí)間迭代變化。 ( ( new Person( Mr John Doe ), mrDoe )。 ( ( new Object[] { application, applicant } ) )。 ( ( new Object[] { application, applicant } ) )。 StatelessKnowledgeSession ksession = ()。 package rule Is of valid age when Applicant( age 18 ) $a : Application() then $( false )。 private int age。因?yàn)樯暾?qǐng)人( applicant)小于 18 歲,所以申請(qǐng)被標(biāo)記為無(wú)效。 assertTrue( () )。一旦 DRL文件已被添加,我們可以檢查知識(shí)構(gòu)建器 Knowl edgeBuilder 對(duì)象的錯(cuò)誤。 if ( () ) { ( ().toString() )。根據(jù)插入的數(shù)據(jù)匹配模式的過(guò)程,常被稱為模式匹配就毫不奇怪了。當(dāng)插入的實(shí)例滿足該對(duì)象類型約束和它的所有字段約束時(shí),它被認(rèn)為是匹配的。 end 為了讓引 擎知道數(shù)據(jù),可以根據(jù)規(guī)則處理它,我們必須插入數(shù)據(jù),多數(shù)人喜歡使用一個(gè)數(shù)據(jù)庫(kù)。 // getter and setter methods here } 現(xiàn)在我們已有了我們的數(shù)據(jù)模型,我們可以編寫(xiě)我們的第一個(gè)規(guī)則。 那么讓我們從使用一個(gè)駕駛執(zhí)照申請(qǐng)的一個(gè)簡(jiǎn)單例子開(kāi)始。一個(gè)無(wú)狀態(tài)會(huì) 話可以傳給它一些數(shù)據(jù),象函數(shù)一樣被調(diào)用。 規(guī)則執(zhí)行原理 規(guī)則執(zhí)行原理 規(guī)則執(zhí)行順序 以堆棧方式執(zhí)行 ,優(yōu)先級(jí)低的先入棧 ,同一優(yōu)先級(jí)的 ,在規(guī)則文件中位置靠前的先入棧 . 例如: ?xml version= encoding=utf8? changeset xmlns= xmlns:xs= xs:schemaLocation= add resource source=classpath:sample/ type=DRL / resource source=classpath:sample/ type=DRL / /add /changeset 規(guī)則引擎會(huì)先執(zhí) 行 規(guī)則文件中的規(guī)則 去匹配傳入的參數(shù),然后進(jìn)入 中去匹配規(guī)則。如果您的規(guī)則都 強(qiáng)耦合 的 , 那么它們將會(huì)變得 不靈活 , 明顯看起來(lái) 規(guī)則引擎是一個(gè)大忽悠 。一般人斷言,“松”或“弱”耦合最好是在設(shè)計(jì)方面,由于增加靈活性,它可以提供。腳本引擎的好處是,他們可以更容易實(shí)施最初,迅速產(chǎn)生效果,和簡(jiǎn)單的概念為當(dāng)務(wù)之急程序員。流程引擎和規(guī)則往往可以很好地工作在一起,所以它們不是互相排斥的。 腳本或流程引擎 希望前面的章節(jié)解釋時(shí),您可能要使用一個(gè)規(guī)則引擎。 戴夫哈姆 由于規(guī)則引擎是動(dòng)態(tài)的(可以存儲(chǔ)和管理規(guī)則的意識(shí)動(dòng)態(tài)的數(shù)據(jù)隨時(shí)更新),他們往往是看著部署軟件的問(wèn)題的解決方案。 什么時(shí)候 不使用規(guī)則引擎 要經(jīng)常引用 Drools 的郵件列表: 在我看來(lái),在工作規(guī)則引擎,人們 很容易 忘記: 只有一個(gè)規(guī)則引擎是一個(gè)復(fù)雜的應(yīng)用 程序或解決方案 。然而,有創(chuàng)建可重復(fù)使用的規(guī)則是無(wú)狀態(tài)的服務(wù),成功的案例。如果有一些這樣的邏輯,你回來(lái)修復(fù),無(wú)論是因?yàn)槟懔隋e(cuò),邏輯或您的理解的變化:考慮使用規(guī)則。 通常在一個(gè)現(xiàn)代的面向?qū)ο蟮膽?yīng)用程序,你可
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1