`
骑猪逛街666
  • 浏览: 141789 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

3.Spring高级话题—4.条件注解@Conditional

阅读更多

摘要: 1.点睛 在2.4节学到,通过活动的profile,我们可以获得不同的Bean。Spring4提供了一个更通用的基于条件的Bean的创建,即使用@Conditional注解。 @Conditional根据满足某一个特定条件创建一个特定的Bean。

1.点睛
在2.4节学到,通过活动的profile,我们可以获得不同的Bean。Spring4提供了一个更通用的基于条件的Bean的创建,即使用@Conditional注解。
@Conditional根据满足某一个特定条件创建一个特定的Bean。比方说,当某一个jar包在一个类路径下的时候,自动配置一个或多个Bean;或者只有某个Bean被创建才会创建另外一个Bean。总的来说,就是根据特定条件来控制Bean的创建行为,这样我们可以利用这个特性进行一些自动的配置。
在Spring Boot中将会大量应用到条件注解,更多内容见6.1节。
下面的示例将以不同的操作系统作为条件,我们将通过实现Condition接口,并重写其matches方法来构造判断条件。若在Windows系统下运行程序,则输出列表命令为dir;若在Linux操作系统下运行程序,则输出列表命令为ls。
2.示例
(1)判断条件定义
①判断Windows的条件
screenshot
②判断Linux的条件
screenshot
(2)不同系统下Bean的类
①接口
screenshot
②Windows下所要创建的Bean的类
screenshot
③Linux下所要创建的Bean的类
screenshot
(3)配置类
screenshot
通过@Conditional注解,符合Windows条件则实例化windowsListService
通过@Conditional注解,符合Linux条件则实例化linuxListService
(4)运行
screenshot
结果
screenshot原文链接

分享到:
评论

相关推荐

    spring里@Conditional注解使用示例代码

    在Spring框架中,`@Conditional`注解是一个强大的特性,它允许我们有条件地加载bean,也就是说,只有当特定条件满足时,对应的bean才会被Spring容器实例化并注册。这个注解是Spring Boot的一个核心功能,使得我们...

    Spring之条件注解@Conditional(Demo)

    在Spring框架中,`@Conditional`注解是一个强大的特性,它允许我们基于特定的条件来决定是否注册某个Bean。这个注解使得我们能够在运行时根据系统环境、配置或其他自定义逻辑来选择性地加载和初始化Bean。这为我们的...

    @Conditional注解应用.rar

    在Java Spring框架中,`@Conditional`注解是实现条件化bean注入的关键工具。这个注解允许我们在配置bean时设置一些条件,只有当这些条件满足时,对应的bean才会被Spring容器实例化并注入到应用程序中。这样的设计极...

    Spring条件注解@Conditional示例详解

    "Spring条件注解@Conditional示例详解" Spring框架中提供了一个强大的条件注解@Conditional,它允许开发者根据特定的条件来控制Bean的创建行为。@Conditional注解可以应用于类和方法上,需要传入一个实现了...

    SpringBoot中使用@Conditional示例代码

    在Spring Boot框架中,`@Conditional`注解是条件装配的核心工具,它允许我们基于某些条件来决定是否加载或注册一个Bean。这个功能使得我们能够更精细化地控制应用的配置,仅在满足特定条件时才会激活某个Bean。下面...

    Spring @Conditional注解原理解析

    Spring @Conditional注解是 Spring 4 新提供的注解,主要用于根据某个条件加载特定的 bean。该注解可以与 @Profile 注解配合使用,以根据不同的操作系统环境加载不同的 bean。 知识点 1:@Conditional 注解的作用 -...

    Spring @Conditional注解讲解及示例详解

    Spring @Conditional注解是Spring框架中的一种重要注解,它可以根据一定的条件进行判断,满足条件则将Bean注册到容器中。@Conditional注解可以标注在类和方法上,它的定义是: ```java @Target({ElementType.TYPE,...

    Spring注解@Conditional案例解析

    Spring注解@Conditional案例解析 @Conditional是一个Spring4提供的注解,用于按照一定的条件进行判断,满足条件给容器注册Bean。下面是对@Conditional的详细解析和示例代码。 一、@Conditional介绍 @Conditional...

    spring boot 项目代码,直接启动本人编写的,里面包含PPT下载地址

    第3 章 Spring 高级话题 .... ............................ 48 3.1 Spring Aware .... ..................................... 48 3.2 多线程 .... .... ......... 51 3.3 计划任务 .... .... ..... 54 3.4 条件...

    spring3注解详解

    3. `@Component`:这是Spring的组件注解,用于标记一个类为Spring管理的Bean。它是`@Service`、`@Repository`和`@Controller`的基础,这三个是它的特殊形式,分别对应服务层、数据访问层和表现层。 4. `@Service`:...

    Spring @compenent注解详解

    使用`@Conditional`注解,可以基于某些条件决定是否创建Bean。这在多环境配置或者特定条件下的Bean创建非常有用。 总结起来,`@Component`注解是Spring框架中的基础构建块,它使得Spring可以管理类的实例,实现...

    JavaEE开发的颠覆者 Spring Boot实战,多个地址免费下载,

    第3 章 Spring 高级话题 .... ............................ 48 3.1 Spring Aware .... ..................................... 48 3.2 多线程 .... .... ......... 51 3.3 计划任务 .... .... ..... 54 3.4 条件...

    Spring 4.0新功能:@Conditional注解详细介绍

    在Spring 4.0中,`@Conditional`注解是一个重要的新特性,它极大地增强了Spring框架的灵活性和可配置性。这个注解允许我们在运行时根据特定条件决定是否注册一个bean。这使得开发者可以根据环境、配置或其他运行时...

    Spring-Boot-Reference-Guide, Spring Boot Reference Guide中文翻译 -《Spring Boot参考指南》.zip

    3. Conditional注解:如@ConditionalOnClass、@ConditionalOnMissingBean等,根据条件决定是否执行配置。 四、Spring Boot Web开发 1. Web MVC:提供RESTful API开发支持,包括Controller、Model、View等。 2. ...

    浅谈SpringBoot中的@Conditional注解的使用

    @Conditional 注解是 Spring 4.0 之后出的一个非常有用的注解,主要用于根据具体的条件决定是否创建 Bean 到 Spring 容器中。下面我们来详细介绍 @Conditional 注解的使用。 @Conditional 注解的作用 @Conditional...

    spring4.0 Conditional在满足特定条件下,才会实例化对象.docx

    Spring 4.0 引入了@Conditional注解,它提供了一种更加灵活的方式来决定何时实例化一个对象,根据特定的条件。这个功能使得我们能够更精细化地控制Spring容器中的bean装配,仅在满足特定条件时才创建和注册bean。 ...

    Spring Boot @Conditional注解用法示例介绍

    在Spring Boot框架中,`@Conditional`注解是条件化注解的核心,它允许你在创建Bean时设置特定的条件。当这些条件满足时,Bean才会被Spring容器注册并实例化。这一特性使得开发者可以根据应用程序的具体环境和配置...

    Spring注解驱动开发.pdf

    ### Spring注解驱动开发知识点详解 #### 一、Spring注解驱动概述 Spring框架通过引入注解支持,极大地简化了Java EE应用的开发工作。它不仅提供了基础的依赖注入功能,还增强了对组件扫描的支持,使得开发者能够...

    通俗易懂的Spring注解驱动开发教程(含配套资料)

    《Spring注解驱动开发》是一套帮助我们深入了解Spring原理机制的教程。现今SpringBoot.SpringCloud技术非常火热,作为Spring之上的框架,他们大量使用到了Spring的一些底层注解.原理,比如@Conditional.@Import.@...

    JavaEE开发的颠覆者+Spring+Boot实战++完整版

    44 第3 章 Spring 高级话题 .... ............................ 48 3.1 Spring Aware .... ..................................... 48 3.2 多线程 .... .... ......... 51 3.3 计划任务 .... .... ..... 54 3.4 ...

Global site tag (gtag.js) - Google Analytics