国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

教你實現傳說中Java7.0的XML嵌入式語法

2019-11-18 12:48:23
字體:
來源:轉載
供稿:網友

  Groovy的Team Leader-- Guillaume Laforge說,MOP(Meta Object PRotocol)是他最喜歡的Groovy特性。
  
  使用MOP可以簡單的對屬性和方法進行攔截和解釋,intercept 已經因為AOP而被大家熟悉。在Groovy里,通過重載GroovyObject的get/setProperty()函數和invokeMethod()函數,可以加入自己的hook和behavior,比java簡單的多的實現proxy和delegator。
  
  而更重要的是,MOP函數可以充當領域語言解釋者的角色,攔截一些在Class里根本沒有定義的屬性、方法來進行解釋,這就是Groovy里xml嵌入式語法的魔法根源。
  
  比如如下的xml
  
  <shop><book name="foo"><writer>莊表偉</writer></book></shop>
  
  可以用groovy這樣訪問
  
  println node.book.writer.text()
  
  node類當然沒有book,writer這樣屬于領域語言的屬性,但通過重載getPropety(String name)函數,node類可以把對book,writer屬性的訪問,轉換成相應DOM節點的訪問。
  
  實現請參看org.codehaus.groovy.sandbox.util.XMLList類的public Object getProperty(final String elementName)函數。
  
  Guillaume Laforge說,It's an aspect of Groovy which makes the language very powerful, but rare are those who really know and use it.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 扶余县| 宁明县| 泾源县| 互助| 太康县| 昭通市| 清流县| 鄢陵县| 台湾省| 金堂县| 阜康市| 洞头县| 马尔康县| 大丰市| 广东省| 沁阳市| 鲁山县| 莒南县| 信丰县| 海城市| 历史| 华容县| 正阳县| 科技| 永平县| 娄底市| 民丰县| 洞头县| 全南县| 福州市| 淮阳县| 长乐市| 鹿邑县| 利辛县| 罗田县| 扬中市| 陆良县| 牙克石市| 墨玉县| 浦北县| 黑山县|