官术网_书友最值得收藏!

5.1 Spring表達式基本定義

在Spring中為了方便開發者進行解耦和設計,可以使用字符串來進行一些特殊含義的描述,但是考慮到實際開發的復雜性,Spring開發框架進一步加強了字符串的功能,推出了Spring表達式語言(Spring Expression Language,SpEL),通過SpEL使得字符串不僅僅可以實現一些基礎的計算功能,還以根據表達式實現對象實例化或者是進行一些復雜的配置文件的編寫。

范例:【mldnspring-base模塊】定義Spring表達式。

本程序實現了一個最基礎的表達式處理,主要功能是字符串截取處理。最為關鍵的是字符串中所有的程序代碼都可以正常執行,而這就是SpEL的核心所在。要想實現這一功能,需要如下輔助類的支持。

表達式解析器:org.springframework.expression.ExpressionParser。

|- 主要是負責為給定的表達式進行內容的解析操作處理的接口標準。

|- 利用SpEL的標準表達式處理子類SpelExpressionParser為ExpressionParser接口實例化。

表達式執行類:org.springframework.expression.Expression。

|- 通過此類可以得到最終計算結果。

表達式計算:org.springframework.expression.EvaluationContext。

|- 計算處理上下文,主要可以實現一些表達式變量的處理,并且實現表達式計算。

范例:【mldnspring-base模塊】在表達式中使用變量。

本程序實現了與之前類似的功能,在定義表達式的時候采用了變量形式#start、#end,這樣就可以在進行計算前設置變量內容,以實現表達式計算。

主站蜘蛛池模板: 蒙自县| 九江县| 达尔| 桓台县| 霍林郭勒市| 济南市| 恩平市| 香港 | 钟祥市| 石嘴山市| 哈尔滨市| 紫阳县| 汝城县| 白沙| 枞阳县| 池州市| 青田县| 南澳县| 西乌珠穆沁旗| 卢氏县| 化隆| 开远市| 凌海市| 弋阳县| 湾仔区| 永宁县| 夏津县| 尖扎县| 山东| 遵义市| 盐山县| 柳江县| 揭东县| 唐海县| 安徽省| 汶上县| 乌兰县| 宜昌市| 伊宁市| 澄江县| 石楼县|