用动态元素自动更新 Web 页面
2010-01-08 00:00:00 来源:WEB开发网接下来,让受管 bean InventoryBean 实现 InventoryListener 并将其注册到库存数据,以便该 bean 可以在库存数据变更时获得通知。清单 3 显示了如何将这个受管 bean 注册到 Inventory 类。
清单 3. 将受管 bean 注册到 Inventorypublic interface InventoryListner {
public abstract void categoryChanged();
}
public class InventoryBean implements InventoryListner{
……
private String m_clientId ;
private InventoryNotifier m_notifier;
public InventoryBean(){
m_notifier = InventoryNotifier.getInstance();
if(m_clientId == null) {
m_clientId = "bookstore";
m_notifier.register(m_clientId, this);
}
}
public void categoryChanged() {
refresh();
//code for refresh dynamic part via ajax
}
……
}
使用清单 1 到清单 3 中所列的这些方法,可以建立一个面向受管 bean 的框架来监视服务器端数据的变更。工作流程是:当此受管 bean 获得服务器端数据已经变更的通知后,就会调用 InventoryBean 的 categoryChanged() 方法,数据模型也会被更新。图 2 展示了此框架在数据库和 “Bean 部分” 之间建立了连接。想要在服务器端监视数据变更或从服务器端接收事件的任何应用程序都可以使用这个框架作为模板。
更多精彩
赞助商链接