`
8821249
  • 浏览: 68751 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Spring笔记(五)Spring事件处理机制

阅读更多
一、自定义事件
  1、继承ApplicationEvent。
import org.springframework.context.ApplicationEvent;

public class RegisterEvent extends ApplicationEvent {

	public RegisterEvent(Object source) {
		super(source);
	}
}


二、定义监听器
  1、继承ApplicationListener。
import org.springframework.context.ApplicationEvent;
import org.springframework.context.ApplicationListener;

public class CustomerServiceListener implements ApplicationListener {

	public void onApplicationEvent(ApplicationEvent event) {
		if (event instanceof RegisterEvent) {
			System.out.println("非法年龄!");
		}
	}
}

  2、注册自定义的监听器。
<bean id="listener" class="event.CustomerServiceListener" /> 


三、发布事件。
  1、在配置文件里声明监听器类。
<bean id="customerService" class="event.CustomerService" />

  2、Bean类调用容器的方法发布事件。
    a、继承后处理Bean接口ApplicationContextAware,实现setApplicationContext。
    b、调用传入的ApplicationContext的publishEvent方法发布事件。
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;

public class CustomerService implements ApplicationContextAware {
	
	private ApplicationContext ac;
	
	public void register(String name, int age) {
		if (age < 18) {
			ac.publishEvent(new RegisterEvent(this));
		} else {
			System.out.println("注册成功!");
		}
	}

	public void setApplicationContext(ApplicationContext ac)
			throws BeansException {
		this.ac = ac;
	}
}

ac.publishEvent(new RegisterEvent(this));发布事件,this事件源
分享到:
评论

相关推荐

    SPRING 笔记SPRING 笔记

    SPRING 笔记SPRING 笔记SPRING 笔记

    spring笔记.pdf

    spring笔记spring基础笔记

    达内,tarena,spring笔记,springPPT课件,达内spring笔记

    Spring笔记可能涵盖了以下内容: 1. **IoC(Inversion of Control)容器**:Spring的核心特性之一,通过反转控制权,让框架负责管理对象的生命周期和装配,开发者只需定义配置,无需手动创建对象。 2. **依赖注入...

    spring笔记.md

    spring入门笔记

    Spring笔记.doc

    例如,在业务逻辑类中,可以使用 Spring 的 AOP 来处理通用的数据库操作,将事务管理等横切关注点分离出来,提高代码的可读性和可维护性。 配置示例: ```xml &lt;beans xmlns="http://www.springframework.org/schema...

    Spring学习笔记(精华全记录)

    - **ApplicationContext**:是一种高级的Spring容器,除了提供BeanFactory的所有功能外,还增加了国际化支持、事件发布机制等功能。 通过以上介绍,我们可以看到Spring框架不仅功能强大,而且设计得非常灵活。无论...

    Springcloud学习笔记.md

    Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Springcloud学习笔记.md,Spring...

    spring笔记.zip

    Spring框架是Java开发中的核心组件,它为应用程序提供...这些笔记将涵盖这些主题的基本概念、使用方法和示例,帮助初学者快速理解和掌握Spring生态系统。通过深入学习和实践,开发者能够构建出高效、可扩展的Java应用。

    Spring笔记示例源代码

    "Spring笔记示例源代码"这个资源很可能是为了帮助学习者深入理解Spring框架的各种功能和用法而提供的实际代码示例。 1. **Spring IoC**:IoC是Spring的核心特性,它将对象的创建和管理权交给Spring容器,使得开发者...

    Spring学习笔记+学习源码.zip

    这份"Spring学习笔记+学习源码.zip"资源包含了深入学习Spring及其相关技术的知识点,以及实践代码,对提升Spring技能将大有裨益。 首先,我们来详细讨论Spring框架的主要组件和功能: 1. **依赖注入(Dependency ...

    尚硅谷周阳老师SpringCloud笔记

    最后,SpringCloud Bus可以看作是一个事件、消息总线,它常被用来刷新配置或者广播其他事件。开发者需要学习如何利用SpringCloud Bus实现配置的动态更新。 除此之外,尚硅谷周阳老师的笔记可能还涵盖了SpringCloud ...

    【狂神说】Spring全面详细笔记.md

    2. **Spring Context**:建立在Core之上,提供了一个配置文件的加载机制及事件传播机制。 3. **Spring AOP**:提供了面向切面编程的实现,让开发者能够更加方便地实现诸如事务管理等功能。 4. **Spring DAO**:提供...

    Spring笔记.docx

    2. **方便解耦**:Spring通过依赖注入(Dependency Injection, DI)机制实现了对象之间的解耦,简化了开发过程中的对象管理。 3. **AOP编程的支持**:Spring支持面向切面编程(Aspect-Oriented Programming, AOP)...

    尚硅谷Spring6的笔记

    尚硅谷Spring6的笔记

    尚硅谷Spring笔记

    尚硅谷Spring笔记

    spring笔记.rar

    除了以上核心内容,Spring笔记中还涵盖了Spring Boot、Spring Cloud等进阶话题,这些都是现代微服务架构中不可或缺的部分。Spring Boot简化了Spring应用的初始搭建和运行过程,而Spring Cloud则为构建分布式系统提供...

    Spring Cloud 学习笔记.pdf

    Spring Cloud的五大核心组件包括:Eureka、Ribbon、Hystrix、Feign和Zuul。其中,Eureka是服务注册与发现中心,Ribbon和Feign是服务调用组件,Hystrix用于实现熔断模式,而Zuul则是微服务网关。Spring Cloud Alibaba...

    Spring学习笔记( spring视频笔记)

    Spring学习笔记( spring视频笔记)

    spring笔记

    Spring 笔记 Spring 是 Java 企业版(Java EE)应用程序的框架,提供了结构化的配置文件,实现了控制反转(IoC)和面向切面编程(AOP),支持表现层、业务逻辑层和持久层。Spring 的核心是 IoC 和 AOP,能够与主流...

Global site tag (gtag.js) - Google Analytics