package com.logcd.beans;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
public class LoginAction implements ApplicationContextAware{
private ApplicationContext applicationContext;
public void setApplicationContext(ApplicationContext applicationContext)throws BeansException {
this.applicationContext = applicationContext;
}
public int login(String username) {
ActionEvent event = new ActionEvent(this,username+"在登录!");
this.applicationContext.publishEvent(event);
return 0;
}
}
(3)listener类:
package com.logcd.beans;
import org.springframework.context.ApplicationEvent;
import org.springframework.context.ApplicationListener;
public class ActionListener implements ApplicationListener{
public void onApplicationEvent(ApplicationEvent event) {
//只处理自己应该处理的
if (event instanceof ActionEvent) {
System.out.println(((ActionEvent)event).getMessage());
}
}
}
(4)配置
<bean id="loginAction" class="com.logcd.beans.LoginAction"/>
<bean id="listener" class="com.logcd.beans.ActionListener"/>