spring boot中的底层配置文件application.yam(application.property)的装配原理初探

*在spring boot中有一个基础的配置文件application.yam(application.property)用于对spring boot的默认设置做一些改动。

*在spring boot中有集成很多其他的包或者框架,如redis的操作的包,日志的等等。

*在spring boot程序启动的时候,也就是下面这个类:

@SpringBootApplicationpublic class Springboot1Application {

   public static void main(String[] args) {      SpringApplication.run(Springboot1Application.class, args);   }}在上面有一个@SpringBootApplication注解,在这个注解的源代码上面还有一个@EnableAutoConfiguration注解,这个注解就表示启用了自定装配。有了@EnableAutoConfiguration这个注解,在程序启动时候就会去找META-INF/spring.factoris中配置的EnableAutoConfiguration的值,而在这些值则包含了其他的集成到spring boot中的框架或者包的自动装配类。而这些自动装配类中还定义了需要注入到spring 上下文容器中的类,以及这些类的属性的值是初始设定还是取application.yam(application.property)配置文件中的值,以及取application.yam(application.property)配置文件中哪个前缀后面设置的值,或者在某种情况下取配置文件中的值某种情况下取初始设置的值。然后完成对象的注入到spring boot 的上下文中

*最后在spring boot启动或者某些地方需要使用注入的对象时,该对象的值就可以时我们在配置文件中设置的值了

原文地址:https://www.cnblogs.com/maycpou/p/11621836.html

时间: 2024-08-10 12:48:20

spring boot中的底层配置文件application.yam(application.property)的装配原理初探的相关文章

spring boot中常用的配置文件的重写

@Configuration public class viewConfigSolver extends WebMvcConfigurerAdapter { /* spring boot 已经自动配置好了springmvc 配置好了viewResolver * 视图解析器(根据方法的返回值得到视图对象,视图对象决定如何渲染(转发或者重定向)) * 我们可以自己给容器中添加一个视图解析器 * ContentNegotiatingViewResolver就会将其组合进来*/ @Override pu

关于Spring boot中读取属性配置文件出现中文乱码的问题的解决(针对application.properties)

两种方法: 方法一:在配置文件中设置中文编码: banner.charset=utf-8server.tomcat.uri-encoding=UTF-8spring.http.encoding.charset=UTF-8spring.http.encoding.enabled=truespring.http.encoding.force=truespring.messages.encoding=UTF-8 方法二: 设置idea的编码格式 原文地址:https://www.cnblogs.com

3.Spring Boot中使用Swagger2构建强大的RESTful API文档

原文:http://www.jianshu.com/p/8033ef83a8ed 由于Spring Boot能够快速开发.便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API.而我们构建RESTful API的目的通常都是由于多终端的原因,这些终端会共用很多底层业务逻辑,因此我们会抽象出这样一层来同时服务于多个移动端或者Web前端. 这样一来,我们的RESTful API就有可能要面对多个开发人员或多个开发团队:IOS开发.Android开发或是Web开发

spring-boot实战【12】:Spring Boot中使用JavaMailSender发送邮件

相信使用过Spring的众多开发者都知道Spring提供了非常好用的JavaMailSender接口实现邮件发送.在Spring Boot的Starter模块中也为此提供了自动化配置.下面通过实例看看如何在Spring Boot中使用JavaMailSender发送邮件. 快速入门 在Spring Boot的工程中的pom.xml中引入spring-boot-starter-mail依赖: 1 2 3 4 <dependency> <groupId>org.springframew

SpringBoot(三) :Spring boot 中 Redis 的使用

前言: 这一篇讲的是Spring Boot中Redis的运用,之前没有在项目中用过Redis,所以没有太大的感觉,以后可能需要回头再来仔细看看. 原文出处: 纯洁的微笑 SpringBoot对常用的数据库支持外,对NoSQL 数据库也进行了封装自动化. redis介绍 Redis是目前业界使用最广泛的内存数据存储.相比memcached,Redis支持更丰富的数据结构,例如hashes, lists, sets等,同时支持数据持久化.除此之外,Redis还提供一些类数据库的特性,比如事务,HA,

springboot(三):Spring boot中Redis的使用

spring boot对常用的数据库支持外,对nosql 数据库也进行了封装自动化. redis介绍 Redis是目前业界使用最广泛的内存数据存储.相比memcached,Redis支持更丰富的数据结构,例如hashes, lists, sets等,同时支持数据持久化.除此之外,Redis还提供一些类数据库的特性,比如事务,HA,主从库.可以说Redis兼具了缓存系统和数据库的一些特性,因此有着丰富的应用场景.本文介绍Redis在Spring Boot中两个典型的应用场景. 如何使用 1.引入

springboot(十一):Spring boot中mongodb的使用

mongodb是最早热门非关系数据库的之一,使用也比较普遍,一般会用做离线数据分析来使用,放到内网的居多.由于很多公司使用了云服务,服务器默认都开放了外网地址,导致前一阵子大批 MongoDB 因配置漏洞被攻击,数据被删,引起了人们的注意,感兴趣的可以看看这篇文章:场屠戮MongoDB的盛宴反思:超33000个数据库遭遇入侵勒索,同时也说明了很多公司生产中大量使用mongodb. mongodb简介 MongoDB(来自于英文单词"Humongous",中文含义为"庞大&qu

Spring Boot中使用Swagger2构建强大的RESTful API文档

由于Spring Boot能够快速开发.便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API.而我们构建RESTful API的目的通常都是由于多终端的原因,这些终端会共用很多底层业务逻辑,因此我们会抽象出这样一层来同时服务于多个移动端或者Web前端. 这样一来,我们的RESTful API就有可能要面对多个开发人员或多个开发团队:IOS开发.Android开发或是Web开发等.为了减少与其他团队平时开发期间的频繁沟通成本,传统做法我们会创建一份RESTf

Spring Boot中Redis的使用

软件152   高光顺 redis介绍 Redis是目前业界使用最广泛的内存数据存储.相比memcached,Redis支持更丰富的数据结构,例如hashes, lists, sets等,同时支持数据持久化.除此之外,Redis还提供一些类数据库的特性,比如事务,HA,主从库.可以说Redis兼具了缓存系统和数据库的一些特性,因此有着丰富的应用场景.本文介绍Redis在Spring Boot中两个典型的应用场景. 如何使用 1.引入 spring-boot-starter-redis <depe