在本实验中,我们将监听增加Customer事件。
1. 创建增加Customer事件类:NewCustomerAdded
这个类没啥特别,就是一个普通的Java类,没有加任何标注。
2. 修改TestServlet
(1)依赖注入事件:@Inject Event newCustomerEvent;
(2)在增加Customer逻辑中的最后一行,增加newCustomerEvent.fire(new NewCustomerAdded(Integer.parseInt(id)));
即每次增加Customer时,都会fire一个NewCustomerAdded事件。
3. 修改CacheSingletonBean,增加监听方法:onAdd
public void onAdd(@Observes NewCustomerAdded event) {
System.out.println("Processing the event: " + event.getId());
preFetchCustomers();
}
该方法将监听NewCustomerAdded事件,无论事件的发起者是谁。
至此,使用NetBeans 7.1开发JavaEE6应用系列文章告一段落。
我们来回顾一下使用到的Java EE 6的新技术,以及这些技术之间的典型架构:
Project下载:JavaEE6SampleApp.7z
1. 创建增加Customer事件类:NewCustomerAdded
这个类没啥特别,就是一个普通的Java类,没有加任何标注。
public class NewCustomerAdded { private int id; public NewCustomerAdded(int id) { this.id = id; } public int getId() { return id; } }
2. 修改TestServlet
(1)依赖注入事件:@Inject Event
(2)在增加Customer逻辑中的最后一行,增加newCustomerEvent.fire(new NewCustomerAdded(Integer.parseInt(id)));
即每次增加Customer时,都会fire一个NewCustomerAdded事件。
3. 修改CacheSingletonBean,增加监听方法:onAdd
public void onAdd(@Observes NewCustomerAdded event) {
System.out.println("Processing the event: " + event.getId());
preFetchCustomers();
}
该方法将监听NewCustomerAdded事件,无论事件的发起者是谁。
至此,使用NetBeans 7.1开发JavaEE6应用系列文章告一段落。
没有评论:
发表评论