码迷,mamicode.com
首页 > 编程语言 > 详细

Spring自动配置3

时间:2021-03-01 13:03:57      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:autoconf   http   简单   注入   一个   自动   讲解   ioc   NPU   

1、配置绑定(要么使用把它加到容器中,要么在配置类中开启配置绑定)

过程:properties-->配置文件-->JavaBean

  ~使用原生代码编写(麻烦):

public class getProperties {
     public static void main(String[] args) throws FileNotFoundException, IOException {
         Properties pps = new Properties();
         pps.load(new FileInputStream("a.properties"));
         Enumeration enum1 = pps.propertyNames();//得到配置文件的名字
        //遍历配置属性名,拿到属性值
         while(enum1.hasMoreElements()) {
             String strKey = (String) enum1.nextElement();
             String strValue = pps.getProperty(strKey);
             System.out.println(strKey + "=" + strValue);
             //封装到JavaBean。
         }
     }
 }

  ~使用注解的方式:@ConfigurationProperties(简单)

       技术图片(配置文件时yml后缀,所以配置项要用:冒号分隔)

    使用@ConfigurationProperties这个注解,说明这是一个配置绑定,且把用@Component加到容器中。

    让Car类属性中的值跟配置文件中设置的值已经成功绑定上,也就是配置文件为Car组件的属性赋值。

技术图片

 

 

 

//测试配置绑定功能
//上一步中,配置文件为Car组件赋值,IOC容器中已经存在该组件,
//我们只要在控制类中使用自动注入,就可以把容器中的组件拿来用

技术图片技术图片

 

 

 

 需要修改组件中属性的值,只需要修改配置文件,然后重新启动项目,重新浏览器请求:

技术图片技术图片

 

~还可以使用@EnableConfigurationProperties + @ConfigurationProperties方式配置

   这种方式不需要使用@Component标注配置注解,而是在配置类MyConfig上方加一个注解,来开启某个类的配置绑定和将该类组件自动注册到容器中

技术图片

技术图片

 

 

 2、自动配置原理

   2.1引导加载自动配置类 核心注解:@SpringBootApplication,它包含了三个注解:

 

技术图片技术图片

 

 技术图片

重点讲解@EnableAutoConfiguration开启自动配置,它又是@AutoConfigurationPackage和@Import这两个注解的合成:

 

                     技术图片

 

 技术图片

 

Spring自动配置3

标签:autoconf   http   简单   注入   一个   自动   讲解   ioc   NPU   

原文地址:https://www.cnblogs.com/Yi-ling/p/14456312.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!