弹簧启动注入财产的三种方式(推荐)

  

以前使用春天的使用要注入财产要配置PropertyPlaceholder的bean对象。在springboot除,了这种方式以外还可以通过制定配置ConfigurationProperties直接把财产文件的属性映射到当前类里面。

        @ConfigurationProperties(前缀=癿ypro”,合并=true,位置={"类路径:我的。属性”})   
     

ConfigurationProperties前缀属性指示财产文件中属性的前缀是什么。我这里写的是mypro。

  

因此财产文件的属性必须mypro.x.y=z的形式;

  

,,,,配置好ConfigurationProperties之后就可以把财产文件的属性映射到当前类了。

        mypro.a: 1   mypro.b: 2   abc.d: 123      

属性文件里面mypro前缀的有a和b两个。因此我在当前类就可以新建这两个属性。

        私人int;   私人int b;      

这些需要映射的属性一定要加上getter和setter。因为春天是通过反射调用方法来修改属性值的

  

,,,,,,,以前使用弹簧注入财产的方式也同样适用。以前是xml配置PropertyPlaceholder。现在使用@ bean或者直接@ component配置这个类。只要把PropertyPlaceholderConfigurer添加到bean工厂,就可以使用@ value取值了。

        @ component   公开课MyPropertyPlaceholderConfigurer延伸PropertyPlaceholderConfigurer {   公共MyPropertyPlaceholderConfigurer () {   this.setIgnoreResourceNotFound(真正的);   最后ListresourceLst=new ArrayList ();   resourceLst。添加(新ClassPathResource (“my.properties”));   this.setLocations (resourceLst。toArray(新资源[]{}));   }   }   @ value (“abc.d”)   私人字符串测试;      

,,,,,,,另外的一种方法跟第二种差不多的。更像以前的xml配置PropertyPlaceholder。只是现在的配置是用@ configuration标注的类,用@ bean标注要配置的bean对象,

        @ configuration   公开课Testproperties {   @ bean   公共PropertyPlaceholderConfigurer属性(){         最后PropertyPlaceholderConfigurer ppc=new PropertyPlaceholderConfigurer ();   ppc.setIgnoreResourceNotFound(真正的);   最后ListresourceLst=new ArrayList ();   resourceLst。添加(新ClassPathResource (“my.properties”));   ppc.setLocations (resourceLst。toArray(新资源[]{}));   返回ppc;   }   }      

以上所述是小编给大家介绍的弹簧启动注入财产的三种方式,希望对大家有所帮助,如果大家有任何疑问请给我留的言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

弹簧启动注入财产的三种方式(推荐)