常量庫文件
在業務系統開(kāi)發過程中,常常會(huì)用到一個(gè)枚舉數(shù)據,比如用戶的性别、學曆等,在URule Pro當中,通(tōng)過定義常量庫文件,可(kě)以将系統中使用的這些(xiē)枚舉數(shù)據映射到規則中使用,這樣就可(kě)以避免規則定義過程中枚舉數(shù)據手工輸入存在錯誤的可(kě)能性。
在“庫”節點上(shàng)右鍵,創建一個(gè)常量庫文件,如下圖所示:
與變量庫文件類似,常量也是由分類和(hé)具體(tǐ)的常量值構成,比如性别有(yǒu)男女之分,那(nà)麽這裏的“性别”就屬性分類,“男”、“女”就屬性具體(tǐ)的常量值。在常量的分類中,“名稱”一般定義具體(tǐ)的分類名,“标題”是一段描述(比如“性别”是标題,“gender”是名稱),同樣這個(gè)标題也會(huì)出現在規則引用當中;加好分類後就可(kě)以添加這個(gè)分類下具體(tǐ)的常量值,常量值也有(yǒu)名稱和(hé)标題之分,名稱是具體(tǐ)的常量值,标題則是描述,比如“男”是标題,"true"是名稱,同樣“女”是标題,“false”是名稱。
同樣,在一個(gè)常量庫文件中可(kě)以根據需要添加多(duō)個(gè)常量分類。
常量定義時(shí),其名稱值可(kě)使用Spring中加載的properties文件值,具體(tǐ)使用方法是将要引用的properties的key值用${...}包裹,這樣在具體(tǐ)規則運行(xíng)時(shí)會(huì)動态查找這個(gè)包裹的屬性值作(zuò)為(wèi)具體(tǐ)的常量,如:${app.title}表示取spring中properties文件的名為(wèi)app.title的屬性值。利用這一功能,可(kě)實現測試環境與生(shēng)産環境的動态切換。
常量類型 | 說明(míng) |
---|---|
String | 字符串 |
Char | 單個(gè)字符,如果值設置的是字符串,隻會(huì)返回字符串的第一個(gè)字符 |
Integer | 整型 |
Long | 長整型 |
Float | 單精度浮點型,超出位數(shù)将被截取 |
Double | 雙精度浮點型,超出位數(shù)将被截取 |
BigDecimal | 高(gāo)精度類型 |
Boolean | 布爾型,值設置參考Boolean.valueOf |
Date | 時(shí)間(jiān)類型,輸入時(shí)間(jiān)格式有(yǒu):yyyy-MM-dd HH:mm:ss、yyyy-MM-dd HH:mm、yyyy-MM-dd |
List | ArrayList集合,值的設置方式為(wèi): 基礎類型集合:s4,s1,s2,s3 複雜類型集合:[{"id":"4","name":"user4"},{"id":"1","name":"user1"}] |
Set | TreeSet集合,值的設置方式為(wèi): 基礎類型集合:s8,s5,s6,s7 複雜類型集合:[{"a1":"s8"},{"a1":"s5"},{"a1":"s6"},{"a1":"s7"}] |
Map | HashMap集合,值的設置方式為(wèi):JSON格式,比如:{"a":"1","b":"2","c":"3"} |
Enum | 任意值 |
Object | 任意值 |
常量庫維護的3種方式
手工添加
如上(shàng)述的操作(zuò)過程。
從Java枚舉類中直接導入
(1)常量庫文件在定義時(shí)支持從一個(gè)具體(tǐ)的Java枚舉類中直接導入,方法是在常量分類上(shàng)右鍵【根據類路徑生(shēng)成常量】,在彈出的窗口中輸入完整的枚舉類路徑,如下圖所示:
(2)在點擊【确定】按鈕後,即可(kě)實現将枚舉類裏的枚舉值導入到當前常量分類之下,如下圖所示:
(3)枚舉類代碼
在通(tōng)過枚舉類導入具體(tǐ)常量時(shí),如果枚舉類中未定義getLabel方法,那(nà)麽導入的枚舉信息則隻采用其name屬性,如果定義了getLabel方法,那(nà)麽導入後的枚舉信息則包含name和(hé)label,包含getLabel方法的枚舉類示例如下所示:
package
public enum TestEnum {
aaa("張三"),bbb("李四");
private String label;
private TestEnum(String label) {
this.label=label;
}
public String getLabel() {
return label;
}
}
excel導入
(1)在excel中作(zuò)如下定義,注意sheet頁名稱是常量的分類名,表格列依次是名稱、标題、數(shù)據類型
(2)點擊“導入Excel”按鈕,選擇上(shàng)述模闆文件,最後上(shàng)傳即可(kě)