From d078a0d6afd3432fe83e1b87fb942232c578442d Mon Sep 17 00:00:00 2001 From: qibaoguang Date: Mon, 23 Mar 2015 23:45:45 +0800 Subject: [PATCH] Update 62.1. Troubleshoot auto-configuration.md --- .../62.1. Troubleshoot auto-configuration.md | 9 --------- 1 file changed, 9 deletions(-) diff --git a/IX. ‘How-to’ guides/62.1. Troubleshoot auto-configuration.md b/IX. ‘How-to’ guides/62.1. Troubleshoot auto-configuration.md index e27f9a2..8008c17 100644 --- a/IX. ‘How-to’ guides/62.1. Troubleshoot auto-configuration.md +++ b/IX. ‘How-to’ guides/62.1. Troubleshoot auto-configuration.md @@ -13,12 +13,3 @@ Spring Boot自动配置总是尝试尽最大努力去做正确的事,但有时 * 查看`@Value`注解,它直接绑定到`Environment`。相比`RelaxedEnvironment`,这种方式稍微缺乏灵活性,但它也允许松散的绑定,特别是OS环境变量(所以`CAPITALS_AND_UNDERSCORES`是`period.separated`的同义词)。 * 查看`@ConditionalOnExpression`注解,它根据SpEL表达式的结果来开启或关闭特性,通常使用解析自`Environment`的占位符进行计算。 -* 启动前自定义Environment或ApplicationContext - -每个`SpringApplication`都有`ApplicationListeners`和`ApplicationContextInitializers`,用于自定义上下文(context)或环境(environment)。Spring Boot从`META-INF/spring.factories`下加载很多这样的内部使用的自定义。有很多方法可以注册其他的自定义: - -* 以编程方式为每个应用注册自定义,通过在SpringApplication运行前调用它的`addListeners`和`addInitializers`方法来实现。 -* 以声明方式为每个应用注册自定义,通过设置`context.initializer.classes`或`context.listener.classes`来实现。 -* 以声明方式为所有应用注册自定义,通过添加一个`META-INF/spring.factories`并打包成一个jar文件(该应用将它作为一个库)来实现。 - -`SpringApplication`会给监听器(即使是在上下文被创建之前就存在的)发送一些特定的`ApplicationEvents`,然后也会注册监听`ApplicationContext`发布的事件的监听器。查看Spring Boot特性章节中的[Section 22.4, “Application events and listeners” ](http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-features-application-events-and-listeners)可以获取一个完整列表。