首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏后端技术

    spring 自动配置(中) 自动配置原理

    @EnableAutoConfiguration作用原理 参考: 深入理解SpringBoot(一) 自动配置 springboot2.0自动注入文件spring.factories如何加载详解 先看springboot2.0 ,把每个包内的META-INF/spring.factories读取,并把org.springframework.boot.autoconfigure.EnableAutoConfiguration的自动配置类都读取 AutoConfigurationImportSelector.selectImports本身只是读取值,将要加载的自动配置类数组返回,而并不负责加载。返回该数组后,框架就会将其加载。 【prefix = "person"】表示与配置文件中哪个层级的属性进行绑定。 当一些属性不想配置到主配置文件,需自定义一个配置文件,需通过@PropertySource注解指定此配置文件路径。 这个文件毕竟是spring-boot-autoconfigure-processor自动生成的,用于spring加快加载速度用的,我们只要会用就好,不必过于关注其原理。

    2K20发布于 2019-05-26
  • 来自专栏后端技术

    spring 自动配置(下) 自动配置总结

    自动配置知识点 总结起来要理解下面几个: 4配置文件 spring.factories spring-configuration-metadata.json和additional-spring-configuration-metadata.json 也可以点开大图保存到本地查看: 自动配置全图解 总结 spring-configuration-metadata.json和spring-autoconfigure-metadata.properties

    1.4K40发布于 2019-05-26
  • 来自专栏技术杂记

    Mycat 配置4

    多租户技术也叫多重租凭技术,就是在确保用户间数据隔离的前提下实现在多用户环境中共用相同系统或程序等软硬件资源的一种软件架构技术

    33720编辑于 2021-12-03
  • 来自专栏技术杂记

    NFS 配置4

    100003 version 2 ready and waitingprogram 100003 version 3 ready and waitingprogram 100003 version 4 100003 version 2 ready and waitingprogram 100003 version 3 ready and waitingprogram 100003 version 4 100003 version 2 ready and waitingprogram 100003 version 3 ready and waitingprogram 100003 version 4 100003 version 2 ready and waitingprogram 100003 version 3 ready and waitingprogram 100003 version 4

    51110编辑于 2022-07-09
  • 来自专栏java学习java

    自动配置解读

    什么是自动配置自动配置的意义就是加速开发效率,将开发者使用某种技术时需要使用的bean根据情况提前加载好,实现自动配置的效果。 ,于是springboot开放修改设置集B的接口,可以由开发者根据需要决定是否覆盖默认配置 要点4:spring.factories文件作用spring.factories文件是Spring Boot 自动配置的核心文件之一,它的作用是将各种自动配置类与对应的配置类集中在一起,方便Spring Boot自动装配。 该文件的格式为键值对,键是自动配置类的全限定名,值是该自动配置类所对应的配置类的全限定名。

    46421编辑于 2023-12-02
  • 来自专栏kenvie

    Java - 自动配置

    自动配置 pom.xml spring-boot-dependencies :核心依赖在父工程中 我们在写或者引入一些Spring Boot依赖的时候,不需要指定版本,就因为有这些版本仓库 启动器 <dependency @Configuration : Spring配置类 @Component : 也是一个Spring的组件 @EnableAutoConfiguration : 自动配置 @AutoConfigurationPackage : 自动配置包 @Import({Registrar.class}) : 自动配置 `包注册` @Import({AutoConfigurationImportSelector.class }) : 自动配置导入选择 //获取所有的配置 List<String> configurations = this.getCandidateConfigurations(annotationMetadata make sure that file is correct."); return configurations; } META-INF/spring.factories :自动配置的核心文件

    66810编辑于 2022-01-20
  • 来自专栏SpringBoot

    【SpringBoot】自动配置

    概述自动配置是SpringBoot框架中的核心之一,其目的是将我们开发中引入的jar包类和自己编写的业务类自动注入到IoC容器中,而无需像我们的Spring一样,需要在配置文件中进行繁杂冗余的配置。 移除获取的自动配置类列表名中重复的项根据注解元数据和注解的属性,获取所有要被排除的自动配置类。 根据获取要排除的自动配置类和可能要引入的自动配置类进行检查是否确定要配出,如果不确定那么就会抛出异常;如果确定那么就会继续执行移除所有要被排除在外的自动配置类内容。 使用配置类过滤器将配置类列表中不需要的配置项进行过滤,可能根据一些条件注解等其他方式来排除。触发自动配置导入事件,允许其他组件监听并响应自动配置的导入过程。 从上述两张图片结合代码可以看出,我们会将自动配置包的全路径类型放入一个统一个文件路径+文件名下面,所以代码在进行查找时,就会把所有的、无论哪个包下的自动配置文件中的全部类全部导入进去,我们就能实现轻松的自动配置

    36010编辑于 2025-01-19
  • 来自专栏一个执拗的后端搬砖工

    springboot自动配置

    springboot自动配置 引 言 Spring Boot的一个强大功能是它能够根据我们添加到类路径中的jar依赖项自动配置我们的应用程序。 在这篇文章中,我们将介绍Spring Boot自动配置功能,并了解它如何在开发周期中提供帮助。 介绍 可以从提出非常简单的问题开始,为什么我们需要Spring Boot自动配置自动配置将尝试根据类路径中的jar自动尝试使用默认行为设置我们的应用程序。 例如,如果Spring Boot在类路径中找到HSQLDB,它将自动为我们配置内存数据库。 此文件包含将由Spring Boot自动启用的自动配置类的列表。 Spring Boot自动配置的比较好的点是它具有无创性,你可以通过自定义自己的配置以替换默认自动配置

    74610发布于 2020-11-19
  • 来自专栏若尘的技术专栏

    SpringBoot 自动配置

    >[] scanBasePackageClasses() default {}; } 从上述源码可以看出,@SpringBootApplication注解是一个组合注解,前面 4 个是注解的元数据信 配置类有关,承担了自动配置的主要逻辑。 配置类有关,承担了自动配置的主要逻辑。 filter 方法进行进一步的过滤,再次排除一些 不符合条件的自动配置类; 【4】经过重重过滤后,此时再触发 AutoConfigurationImportEvent 事件,告诉 ConditionEvaluationReport exclude 的自 动配置类,然后再排序 最后,我们再总结下SpringBoot自动配置的原理,主要做了以下事情: 从spring.factories配置文件中加载自动配置类; 加载的自动配置类中排除掉

    1.7K84发布于 2021-11-25
  • 来自专栏流媒体

    SpringBoot自动配置

    配置属性类 @Data @Component @ConfigurationProperties(prefix = "interceptor.token") public class TokenProperty pathPatterns; private String excludePath; private String key; private long expire; } 如果这里添加了注解那么在自动配置类的时候就不用添加 @enableConfigurationProperties(TokenProperty.class)注解 prefix 配置文件中的前缀 enable=true 如果自动配置没有读入成功,那么为默认值 对应配置文件 interceptor.token.enable=true interceptor.token.expire=3600 interceptor.token.key=dG9rZW4xMjM0NTY

    46210发布于 2018-08-23
  • 来自专栏一个会写诗的程序员的博客

    《Spring Boot 实战:从0到1》第4章 Spring Boot自动配置原理第3章 Spring Boot自动配置原理

    可以看出,这些starter只是配置,真正做自动配置的代码的是在spring-boot-autoconfigure里面。 5.3 @EnableAutoConfiguration自动配置原理 通过@EnableAutoConfiguration启用Spring应用程序上下文的自动配置,这个注解会导入一个EnableAutoConfigurationImportSelector (4)@EnableConfigurationProperties,表示启动对FreeMarkerProperties.class的内嵌配置支持,自动将FreeMarkerProperties注册为一个 自动配置运行日志报告功能就是这么实现的。 这样,当我们以调试模式启动应用程序时,SpringBoot就可以帮助我们创建自动配置的运行报告。对于每个自动配置,通过报告我们可以看到它启动或失败的原因。

    1.4K20发布于 2018-08-17
  • 来自专栏公众号:咻咻ing

    4. JanusGraph配置

    缓存配置和调优在第13章JanusGraph Cache中介绍。 1. 配置示例 下面的配置示例,介绍了如何配置最常用的后端存储、索引系统和性能组件。 但这只涉及了配置的一小部分,有关更多的配置信息,请参阅第15章 配置参考。 1.1. scriptEngines配置 启用了JanusGraph Gremlin插件,该插件支持自动导入JanusGraph类,以便可以在远程提交的脚本中引用它们。 全局配置 JanusGraph区分本地和全局配置选项。 本地配置选项适用于单个JanusGraph实例。 全局配置选项适用于群集中的所有实例。 调用commit将自动关闭图实例 重启所有实例 关于更多配置信息(包括每个选项的配置范围),请参阅第15章“配置参考”中的完整配置项列表。

    3K40发布于 2019-08-07
  • 来自专栏Java技术栈

    Spring Boot 排除自动配置4 种方法,关键时刻很有用!

    Spring Boot 提供的自动配置非常强大,某些情况下,自动配置的功能可能不符合我们的需求,需要我们自定义配置,这个时候就需要排除/禁用 Spring Boot 某些类的自动配置了。 比如:数据源、邮件,这些都是提供了自动配置的,我们需要排除 Spring Boot 的自动配置,交给我们自己来自定义,该如何做呢? 今天栈长给你介绍 4 种排除方式,总有一种能帮到你! DataSourceAutoConfiguration.class, MailSenderAutoConfiguration.class}) public class Application { // ... } 自动配置类不在类路径下的时候 方法4 终极方案,不管是 Spring Boot 还是 Spring Cloud 都可以搞定,在配置文件中指定参数 spring.autoconfigure.exclude 进行排除: spring.autoconfigure.exclude 种排除方法,我们使用 Spring Boot 的自动配置功能就游刃有余了,怎么样?

    13.9K40发布于 2019-12-17
  • 来自专栏Java3y

    SpringBoot自动配置原理!

    一、SpringBoot的自动配置原理 不知道大家第一次搭SpringBoot环境的时候,有没有觉得非常简单。无须各种的配置文件,无须各种繁杂的pom坐标,一个main方法,就能run起来了。 所以今天来讲讲SpringBoot是如何实现自动配置的~ 1.1三个重要的注解 我们可以发现,在使用main()启动SpringBoot的时候,只有一个注解@SpringBootApplication 简单来说,这个注解可以帮助我们自动载入应用程序所需要的所有默认配置。 网上将这个@AutoConfigurationPackage注解解释成自动配置包,我们也看看@AutoConfigurationPackage里边有什么: ? 自动配置功能

    66250发布于 2019-08-27
  • 来自专栏编程语言的世界

    springboot自动配置原理

    Spring Boot的自动配置原理基于以下几个关键点:条件注解 :Spring Boot使用条件注解来决定是否自动配置某个组件或功能。 自动配置类 :自动配置类通常使用@Configuration注解标记,并包含带有@Conditional注解的方法,用于根据条件判断是否应用自动配置。 等注解,用于启动自动配置和组件扫描。 自动配置的启动依赖 :在项目的pom.xml中引入spring-boot-starter-parent作为父依赖,可以确保一些必要的类和资源被包含在项目中,从而满足自动配置的条件。 自动配置的优先级 :如果项目中手动配置了某个Bean,Spring Boot将优先使用手动配置的Bean,而不是自动配置生成的Bean。

    26100编辑于 2024-12-24
  • 来自专栏后端技术

    spring 自动加载配置

    前言 springboot有着开箱即用的特性,mybatis等组件只需要用maven安装好,springboot就会自动组装,不需要自己写配置文件。 这便是springboot能自动配置的原因。 自动配置文件 1.1 什么是自动配置文件 在上文,我列举了好几个自动配置文件,当你需要开发的包被springboot自动配置时,就要填写上面的一个或更多配置文件。 你可能会疑惑,这些自动文件分别有什么作用?怎么编写自己的自动配置文件呢? 1.2 自动配置文件的作用和编写 Appendix B. 前者一般会随IDE自动生成,在build期间,IDE会检查你的配置代码和注释,并生成。后者人为书写的,用来对前者进行补充。

    3.9K30发布于 2019-05-25
  • SpringBoot自动配置原理

    问题引入SpringBoot最核心的一个东西就是自动配置自动配置的原理是什么?我们知道Spring最开始是通过xml文件配置,来告诉Spring要创建哪些类、哪些Bean。 一个不好的例子,就是Java的日志功能,所以抽象做得更好的slf4j-api基本就成了共用接口标准。 starter知道了自动配置原理,再来看starter就想吃饭喝水一样简单了。 还有一些更符合Spring模式的,例如,会单独有一个autoconfigure项目来管理自动配置自动配置的类配置在META-INF\spring\org.springframework.boot.autoconfigure.AutoConfiguration.imports文件。

    18210编辑于 2025-12-29
  • 来自专栏小手冰凉

    zabbix 配置自动发现与自动注册

    注:本文基于:https://blog.51cto.com/14227204/2474670 一、自动发现: 1、部署安装agent端: [root@agent /]# mkdir /zabbix [ OK ] Starting zabbix_agentd (via systemctl): [ OK ] 2、登录到zabbix web界面操作 创建自动发现规则 创建自动发现动作 ? ? ? ? ? ? 二、自动注册 自动注册比自动发现配置少、方便,自动注册是客户端向服务端发送数据 #需要在原有配置文件上更改如下 [root@agent /]# sed -i 's/# HostMetadataItem=

    71710发布于 2020-03-12
  • 来自专栏日常技术分享

    Spring Boot 自动配置

    ActuatorApplication.class, args); } } @SpringBootApplication 其实包含3个注解 ○@SpringBootConfiguration:标记当前类为配置类 ○@EnableAutoConfiguration:开启自动配置 ○@ComponentScan:扫描主类所在的同级包以及下级包里的Bean 关键是@EnableAutoConfiguration default {}; String[] excludeName() default {}; } 关键是@Import(AutoConfigurationImportSelector.class)导入的配置功能 , AutoConfigurationImportSelector中的方法getCandidateConfigurations,得到待配置的class的类名集合 /** * Return the auto-configuration

    1.2K30发布于 2018-12-27
  • 来自专栏开源君

    关于SpringMVC自动配置

    Spring MVC auto-configuration Spring Boot 自动配置好了SpringMVC 以下是SpringBoot对SpringMVC的默认配置:==(WebMvcAutoConfiguration 自动配置了ViewResolver(视图解析器:根据方法的返回值得到视图对象(View),视图对象决定如何渲染(转发?重定向?)) (@Configuration),是WebMvcConfigurerAdapter类型;不能标注@EnableWebMvc==; 既保留了所有的自动配置,也能用我们扩展的配置; //使用WebMvcConfigurerAdapter 2)、在做其他自动配置时会导入;@Import(**EnableWebMvcConfiguration**.class) @Configuration public static class 、我们的配置类也会被调用; 效果:SpringMVC的自动配置和我们的扩展配置都会起作用;

    86700发布于 2021-03-16
领券