@ConfigurationProperties 实现流程

这篇具有很好参考价值的文章主要介绍了@ConfigurationProperties 实现流程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、基本使用
  1. 创建配置对象
    对象上标注@ConfigurationProperties注解
@ConfigurationProperties(prefix = "spring.datasource")
public class DataSourceProperties implements 
BeanClassLoaderAware, InitializingBean {
private String driverClassName;
     /**
      * JDBC URL of the database.
      */
     private String url;
     /**
      * Login username of the database.
      */
     private String username;
     /**
      * Login password of the database.
      */
     private String password;

}

  1. 使用配置对象
  • 标注@EnableConfigurationProperties(配置对象类.class)
  • 一般用在@Configuration标注的类上
@Configuration(proxyBeanMethods = false)
@EnableConfigurationProperties(DataSourceProperties.class)
public class EmbeddedDataSourceConfiguration implements BeanClassLoaderAware {

	@Bean(destroyMethod = "shutdown")
	public EmbeddedDatabase dataSource(DataSourceProperties properties) {
		return new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseConnection.get(this.classLoader).getType())
				.setName(properties.determineDatabaseName()).build();
	}

}
二、关键对象
  • ConfigurationPropertiesBindingPostProcessor:实现了BeanPostProcessor
    拦截@ConfigurationProperties标注bean的创建过程,注入值。
  • EnableConfigurationPropertiesRegistrar:将ConfigurationPropertiesBindingPostProcessor放入容器;将value属性值(标注@ConfigurationProperties的bean class)放入容器
三、实现流程
  1. ConfigurationPropertiesBindingPostProcessor类被加载和解析
  1. 拦截@ConfigurationProperties标注bean的创建过程,注入值

文章来源地址https://www.toymoban.com/news/detail-445684.html

到了这里,关于@ConfigurationProperties 实现流程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序基本使用流程

    微信小程序官方文档 调接口 建议封装后使用,原生方法太繁琐 添加页面 右键-新建Page-输入页面名称会自动生成四个文件 底部 tab 要在 app.json 中的 pages 中添加组件路径 在 tarBar 中的list中 pagePath (配置路径,在pages中要有!!!) text (显示文字) iconPat (当点击时它显示的图标

    2024年02月06日
    浏览(39)
  • Spring Boot微服务从yml文件中加载配置(使用@Value和@ConfigurationProperties)

    记录 :398 场景 :在Spring Boot的微服务中从application.yml等yml文件中加载自定义配置内容。使用@Value直接加载单个配置。使用@ConfigurationProperties注解把一个或者多个配置加载为Java对象。 版本 :JDK 1.8,SpringBoot 2.6.3 1.使用@Value注解加载配置 使用注解@RestController、@Service、@Component等

    2024年02月12日
    浏览(43)
  • 基础Axios封装与使用(基本流程步骤)

    目录 一、axios是什么? 二、axios的使用及封装(基于vue-cli) 一、安装axios 二、搭建一个目录结构(考虑区分开发和生产环境) 三、axios的基础封装 四、另种封装 — 简单封装 五、axios封装后 业务请求 的封装使用 六、在页面代码中使用封装的业务请求app.vue 三、可扩展    

    2024年02月06日
    浏览(85)
  • React框架的介绍、特点、安装及基本使用流程

    react是由facebook前端开发团队开发和维护的js框架 react的实现功能类似VUE,但是由于国外的开发风格,导致在react上,并没有对数据渲染的步骤进行封装,需要开发者更多的使用es6的语法手动完成数据渲染,所以,代码难度比VUE高。 1.一切皆组件:在react中几乎都是使用组件进行

    2024年01月21日
    浏览(42)
  • 【vue项目】vue项目创建全流程,创建使用 vue-cli 搭建项目

    一. 使用 vue-cli 搭建项目 1.安装vue/cli ,执行下面的命令安装或是升级 npm i -g @vue/cli 安装报错 ​ 如果安装报错如下 npm i -g @vue/cli 安装报错解决方案 ​ 查看vue版本 vue -V ,主要原因是安装vue的版本过低。 ​ 输入以下命令 ,可以强制覆盖以前旧版本的vue-cli脚手架。 ​ 执行完,

    2023年04月17日
    浏览(56)
  • 深入理解JVM:Java使用new创建对象的流程

            ①new 对象         ②反射         ③对象的复制         ④反序列化 先看看常量池里面有没有,如果有,就用常量池的 看这个类有没有被加载过,如果没有,就执行类加载以及类的初始化。(对象的大小,在类加载的时候就确定了)。 对象在堆内存

    2024年02月15日
    浏览(67)
  • kali工具SQLmap基本使用方法流程以及命令解析

    这边来详细写一篇SQLmap工具的使用方法,这边借用了pikachu里sql注入类的字符形注入  首先sql注入肯定要先找注入点在哪里,我们在输入栏里输入admin试试  看到有向后台查询的get请求,然后直接放到sqlmap里试一下 注意:-u后面的URL链接一定要加双引号,不加的话有时候get请求里

    2023年04月19日
    浏览(40)
  • ROS-参数服务器(python)方向的基本实现流程及代码演示

    首先是创造工作空间等等这里就不再赘述,下文使用的工作空间叫 ilove02_01_ws;功能包名字叫做:ilovezero2。 参数服务器的一套简单流程就是围绕:增删改查;这四个字组成的。 其中由增改这两个字组成一个主体文件,后面就叫它为 set文件。实行查与删功能的文件后面我就分

    2024年01月21日
    浏览(43)
  • EMQX(MQTT)----基本用法以及使用Python程序进行模拟流程

            EMQX是大规模分布式物联网MQTT消息服务器,除了发送接送的流量不能太大(不能用于生产!),在学习MQTT方面上有很大的优势的!         在使用该协议时,主要需要弄懂的一个知识点就是“发布者”和“订阅者”的关系,在最简单的模型中,一般会含有以上两

    2023年04月24日
    浏览(81)
  • vivado基本使用流程(详细版,一步步跟着来一定能成功)

    创建工程 1、  2 3、项目名称不能有空格,目录不能含有中文路径 4、 5、 6、   7、    8、  9、   10、  11、 12、   13、 14、    15、   16、  可以查看一下新建的文件  二、设置IP核 1、 2、 3、  4、 5、  6、  7、 可以查看到生成的ip核 8、 找到例化模板,日常使用中可以根

    2024年02月11日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包