Tapestry绑定的作用与实现

  Binding是Tapestry一个非常重要的组成部分,同时也是开发者很少接触的部分。绑定是用于为组件实例定义的参数提供数据的机制。有了绑定机制,组件就不必知道数据的来源,它需要的只是在必要的时候可以获取数据。
    绑定在包含该组件的定义文件或模版文件内设置。绑定可以是静态的,或动态的(这不是由组件自身决定的)。组件也可能使用绑定将一个值写回其它对象(典型的是写回某一个组件)。
    简单点说,绑定是页面和组件(确切的说是组件与其容器)的桥梁。页面通过帮定将数据通过绑定传递给组件,组件通过绑定将获取所需要的数据。特别是如果一个组件允许使用非正式参数的时候,绑定就必不可缺了。所有的非正式参数都会作为绑定赋给组件。

Tapestry绑定的作用与实现

上图描述了绑定的所处的地位。以及一些实现了的绑定规则。
    Tapestry组件的使用是通过模板或定义文件完成的。当页面生成的时候页面识别出某个组件,并完成该组件的生成工作之后会根据不同的绑定规则生成不同的绑定实例,并将其设置给组件。比如说常用的"asset:","ognl:","listener:"等。上图中AssetBinding和Expessing就是对应于"asset",和"ognl:"两种绑定。 



你可能感兴趣的:(工作,tapestry)