谁能给我一个事件驱动架构的例子,一个简单的理解它的例子,我有一个项目需要事件驱动架构的实现。
发布于 2015-03-21 21:23:59
最简单的方法可能是使用Swing或其他工具包。
Swing实现了事件驱动架构,因为与用户的每次交互都被建模为一个事件,并且您必须为特定类型的事件注册一个事件处理程序。例如,ActionListener
监听用户按下按钮时发生的事件。
发布于 2015-03-21 21:33:56
更改对象的状态称为事件。这些事件包括鼠标单击、鼠标移动、单击按钮、选中单选复选框等。Here's你需要知道的所有信息和方法。举个简单的例子,下面是一个使用监听器的AWT (Java的GUI工具包)程序
import java.awt.*;
import java.awt.event.*;
class AEvent extends Frame implements ActionListener{
TextField tf;
AEvent(){
tf=new TextField();
tf.setBounds(60,50,170,20);
Button b=new Button("click me");
b.setBounds(100,120,80,30);
b.addActionListener(this);
add(b);add(tf);
setSize(300,300);
setLayout(null);
setVisible(true);
}
public void actionPerformed(ActionEvent e){
tf.setText("Welcome");
}
public static void main(String args[]){
new AEvent();
}
}
发布于 2015-03-21 21:43:57
JSF也有一个事件驱动的结构。
控制器(处理用户活动)应该通过事件进行通信。这意味着控制器发布一个事件,订阅此事件的每个其他控制器都将收到通知,从而可以执行某些操作。
下面的示例使用googleEventBus发布和订阅事件。
// Controller which handles the action if an item is deleted:
public class DeleteItemController {
@Autowired
private EventBus eventBus;
public void deleteShow(MyItem item) {
// some action here calling a service...
eventBus.post(new ItemDeletedEvent(show));
}
}
// controller used to control all items
public class ItemListController {
@Subscribe
public void showDeleted(ItemDeletedEvent event) {
MyItem item = event.getDeletedItem();
// do some action
}
}
https://stackoverflow.com/questions/29183183
复制相似问题