论坛首页 Java企业应用论坛

Tapestry 5 页面生命周期方法

浏览 3714 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-04-21  
页面生命周期方法
 
本文根据http://tapestry.apache.org/tapestry5/tapestry-core/guide/lifecycle.html翻译整理过来,请高手指正,转载请注明出处!
 
 
这里有一些有益于组件执行操作的情况,通常是一些基于页面生命周期的初始化与缓存。
 
页面生命周期非常简单,当第一次被请求时,页面被装载,装载一个页面包括初始化页面中的组件及将各组件连接在一起。
页面一旦被装载,它就附加于当前的请求。注意存在许多的线程,每一个线程处理它自己的请求。许多情况下,会有同一页面的多份拷贝附加于不同的请求(即不同的线程)。这也是Tapestry不用你担心多线程的问题……对象参与任何请求且只用于该请求(即该线程)。
在请求结束时,响应(response)被发往客户端后,页面便脱离该请求。这正是执行一个页面清理的时机,如丢弃一些临时的对象(以便它们可以被垃圾回收器回收)、返回页面最初的状态。脱离后,页面被置入页面池,以等待稍后的请求重新使用它(很可能是另外一个用户)。
组件呈现时,我们可以通过标注(identifying)方法告知组件以下事件被调用。
 
我们可以选择在方法上附加一个注解(annotation),或者正确简单地命名方法。
 
页面生命周期方法应该不带参数且返回void值。
 
注解(annotations)/方法名:
§   PageLoaded annotation, 或方法名 "pageLoaded"
§   PageAttached annotation, 或方法名"pageAttached"
§   PageDetached annotation, 或方法名"pageDetached"
 
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics