花钱的年华

--今天开始成为主站

用户操作
[即时聊天] [发私信] [加为好友]
江南白衣ID:calvinxiu
691022次访问,排名53好友0人,关注者38
calvinxiu的文章
原创 161 篇
翻译 0 篇
转载 0 篇
评论 646 篇
江南白衣的公告

肖桦,江南白衣,
开源项目SpringSide
春天的旁边
发起者

最近评论
calvinxiu:
发版本最痛苦的事情,就是刚发完之后忽然又有了一个比较重要的更新。

推荐大家下载3.0.3.1 (2mb)

1.简化了目录结构,感觉又清爽了不少。
2.消除了最后一块需要逐个Class写配置文件的地方(applicationContext.xml中的sessionFactory的mapping class)。
dreaming:恭喜~
hongyi:还是一头雾水,郁闷,为啥有这么多东东,叫人头大
suncheng_hong:用过appfuse,但springside还没有尝试过。
suncheng_hong:很想尝试一下。
文章分类
    收藏
      相册
      Blog用图
      Friends
      @_@
      Anders小明
      buaawhl
      cac
      canonical
      cctvx1
      david.turing
      femto
      g9
      JohnsonQu
      Michael Chen
      Raimundox
      robbin
      SimonLei
      totodo
      wuyu
      周爱民
      孟岩
      差沙
      庄表伟
      落魄的程序员
      透明
      郁也风
      铁手
      银狐999
      飞云小侠
      存档
      软件项目交易
      订阅我的博客
      XML聚合  FeedSky
      订阅到鲜果
      订阅到Google
      订阅到抓虾
      订阅到BlogLines
      订阅到Yahoo
      订阅到GouGou
      订阅到飞鸽
      订阅到Rojo
      订阅到newsgator
      订阅到netvibes

      原创 Groovy MOP实现mini-language 如传说中Java7.0的XML嵌入式语法收藏

      新一篇: Spring 的微内核与FactoryBean扩展机制 | 旧一篇: 用Groovy 小试一段文本操作的script

         作者:江南白衣    

          Groovy的Team Leader-- Guillaume Laforge说,MOP(Meta Object Protocol)是他最喜欢的Groovy特性。
         
          MOP是对属性、方法进行拦截解释的简单机制,intercept 已经因为AOP而被大家熟悉。
          Groovy的类都继承于GroovyObject,GroovyObject有get/setProperty()和invokeMethod()两个函数,当客户调用不存在的属性和方法时,就会交由这两个函数来处理,在Ruby里,这个方法被更贴切的命名为method_missing()。Groovy类可以通过重载这两个函数,加入自己的hook和behavior,比Java简单的多的实现ProxyDelegator。

          而更重要的是,MOP函数可以充当领域语言解释者的角色,拦截一些存在于领域语言的而在Class里根本没有定义的属性、方法来进行解释,这就是Groovy里XML嵌入式语法的魔法根源
          IBM DW有一篇专门的文章 :《PRACTICALLY mini-languages and MOPs Of Groovy:》
           比如如下的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. 

      发表于 @ 2005年08月17日 12:18:00|评论(loading...)|编辑

      新一篇: Spring 的微内核与FactoryBean扩展机制 | 旧一篇: 用Groovy 小试一段文本操作的script

      评论

      #woenrvm@mail.com 发表于2007-09-01 13:53:39  IP: 68.180.195.*
      oqpmbayz rclkwp cwylxtdna tkswvqrpu cniqtbep txezh zxpecy
      #bkwqgfr@mail.com 发表于2007-09-01 13:54:36  IP: 201.247.144.*
      jzdsq jisfqoy wtkvfbzc xvsbctk bmqzgh wvsunlzd fvzpa http://www.uzlehbqdc.ijmd.com
      #mduioert@mail.com 发表于2007-09-01 13:54:42  IP: 68.180.195.*
      ntsybrlu skto okyrwm itoelp ulmbeik fnqplcj voumxndp quiahszb itbuvmce
      发表评论  


      登录
      Csdn Blog version 3.1a
      Copyright © 江南白衣