[email protected]&@ImportResource&@Bean_大数据开发工程师-宋权的博客-程序员宅基地

技术标签: SpringBoot  语音识别  

@PropertySource:加载指定的配置文件;

/**
 * 将配置文件中配置的每一个属性的值,映射到这个组件中
 * @ConfigurationProperties:告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;
 *      prefix = "person":配置文件中哪个下面的所有属性进行一一映射
 *
 * 只有这个组件是容器中的组件,才能容器提供的@ConfigurationProperties功能;
 *  @ConfigurationProperties(prefix = "person")默认从全局配置文件中获取值;
 *
 */
@PropertySource(value = {"classpath:person.properties"})
@Component
@ConfigurationProperties(prefix = "person")
//@Validated
public class Person {

    /**
     * <bean class="Person">
     *      <property name="lastName" value="字面量/${key}从环境变量、配置文件中获取值/#{SpEL}"></property>
     * <bean/>
     */

   //lastName必须是邮箱格式
   // @Email
    //@Value("${person.last-name}")
    private String lastName;
    //@Value("#{11*2}")
    private Integer age;
    //@Value("true")
    private Boolean boss;

@ImportResource:导入Spring的配置文件,让配置文件里面的内容生效;

Spring Boot里面没有Spring的配置文件,我们自己编写的配置文件,也不能自动识别;

想让Spring的配置文件生效,加载进来;@ImportResource标注在一个配置类上

@ImportResource(locations = {"classpath:beans.xml"})
导入Spring的配置文件让其生效

不来编写Spring的配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">


    <bean id="helloService" class="com.atguigu.springboot.service.HelloService"></bean>
</beans>

SpringBoot推荐给容器中添加组件的方式;推荐使用全注解的方式

1、配置类**@Configuration**------>Spring配置文件

2、使用**@Bean**给容器中添加组件

/**
 * @Configuration:指明当前类是一个配置类;就是来替代之前的Spring配置文件
 *
 * 在配置文件中用<bean><bean/>标签添加组件
 *
 */
@Configuration
public class MyAppConfig {

    //将方法的返回值添加到容器中;容器中这个组件默认的id就是方法名
    @Bean
    public HelloService helloService02(){
        System.out.println("配置类@Bean给容器中添加组件了...");
        return new HelloService();
    }
}

4、配置文件占位符

1、随机数

${random.value}、${random.int}、${random.long}
${random.int(10)}、${random.int[1024,65536]}

2、占位符获取之前配置的值,如果没有可以是用:指定默认值

person.last-name=张三${random.uuid}
person.age=${random.int}
person.birth=2017/12/15
person.boss=false
person.maps.k1=v1
person.maps.k2=14
person.lists=a,b,c
person.dog.name=${person.hello:hello}_dog
person.dog.age=15

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/song_quan_/article/details/120203021

智能推荐

数组队列的实现_Mr.kun的博客-程序员宅基地_数组队列

1.什么是数组队列要知道这个问题,首先我们要清楚数组有哪些特点。数组的优点是显而易见的,但是数组有哪些缺点呢?其中我认为最大的一个缺点就是数组大小固定,如果要存储的数据个数不确定的时候?就可能出现以下两种情况:1.数组空间不够,导致越界异常发生2.如果空间太大了,数据不够,就会浪费内存空间那如何解决这个问题呢,或许数组队列可以很好的解决这个问题。...

杜根定律_Tom Hardy的博客-程序员宅基地_面试题:杜根定律

鼓励我自己!“强者不一定是胜利者,但胜利迟早都属于有信心的人。强者未必是胜利者,而胜利迟早都属于有信心的人。换句话说,你若仅仅接受最好的,你最后得到的常常也就是最好的,只要你有自信。一个人胜任一件事,85%取决于态度,15%取决于智力,所以一个人的成败取决于他是否自信,假如这个人是自卑的,那自卑就会扼杀他的聪明才智,消磨他的意志。自信、执着、富有远见、勤于实践,会让你握有一张人生之旅的...

Linux 环境下已安装 nginx 添加扩展第三方动态模块_Blau的博客-程序员宅基地

Linux 环境下已安装 nginx 添加扩展第三方动态模块已经安装好的 nginx ,需要添加一个未被编译安装的模块,如何处理? nginx 的模块是需要重新编译 nginx 并引入该编译文件,而不是像 apache 一样配置文件引用 .so 。这里以扩展第三方 echo 模块, echo 模块是在 nginx 程序上扩展了 echo 输出字符的功能, Nginx-echo 可以在 Ng...

PAL制式和NTSC制式的定义及区别_qiuchangyong的博客-程序员宅基地

原文地址 http://www.52video.net/art_view5402.html    大部分的AV玩家都知道NTSC(美国国家电视系统委员会)代表了一种目前世界上广为采用的电视系统标准,事实上,NTSC是由EIA(美国电子工业协会)所发起及创办的。NTSC也曾经订定了单色(黑白)电视标准,并且于1941年经FCC(美国联邦通信委员会)通过并认可了这个标准。其实在1949年左右,

maven打war包和jar包的方式(项目本身与依赖的jar包合并或者分离两种方式)_乐之者java的博客-程序员宅基地_maven war 依赖分离

maven怎么打war包一个童鞋问我maven怎么打war包,一听有点懵,懵的不是maven到底该怎么打war包,我不会?而是觉得maven打war包需要配置吗,也许只有最简单的才是最适合的。maven配置文件pom.xml的基本结构:&lt;projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http...

随便推点

2016 GDCPC 省赛总结_weixin_30536513的博客-程序员宅基地

大神们说,要多写博客,多总结,于是很久之前就开了博客,可是一篇文章都没有写,太懒也是,没什么时间也是。现在省赛结束了,也是时候好好总结一下了。本来一开始,三个人对拿铜牌是很有把握的,在比赛一开始A了4题水题之后,也是觉得铜牌应该是十拿九稳了。可是在后半段,我们三个人分工开了两题,主力在一道数据结构的题上面卡死了,而一道比较水的模拟题我们也是不太懂他的题意,也是一直在那...

python获取操作系统平台、版本及架构_maoyongfan3的博客-程序员宅基地

platform模块提供了底层系统平台的相关信息系统架构32位还是64位123456>>>import platform>>> platform.architecture()('64bit','ELF')# python 3.3.2+ 64 bits on debian jessie 64 bi

DIV重叠 CSS让DIV层叠 两个DIV或多个DIV顺序重叠加_影孓的博客-程序员宅基地_div 重叠

DIV重叠 CSS让DIV层叠、叠加,CSS让两个DIV或多个DIV按顺序重叠叠加篇让DIV重叠并按想要顺序重叠需要CSS来实现,即CSS绝对定位进行实现。重叠样式需要主要CSS样式解释1、z-index 重叠顺序属性2、position:relative和position:absolute设置对象属性为可定位(可重叠)3、left right top bottom绝对定位具体位置设...

多边形游戏_xing halo的博客-程序员宅基地

多边形游戏  多边形游戏是一个单人玩的游戏,开始时有一个由n个顶点构成的多边形。每个顶点被赋予一个整数值,每条边被赋予一个运算符“+”或“*”。所有边依次用整数从1到n编号。1 将一条边删除。2 随后n-1步按以下方式操作:  (1)选择一条边E以及由E连接着的2个顶点V1和V2;  (2)用一个新的顶点取代边E以及由E连接着的...

Mybatis中文文档_wzc_ss的博客-程序员宅基地_mybatis中文文档

MyBatis文章目录MyBatis简介什么是MyBatis入门安装从 XML 中构建 SqlSessionFactory不使用 XML 构建 SqlSessionFactory从 SqlSessionFactory 中获取 SqlSession探究已映射的 SQL 语句**对命名空间的一点补充****命名解析**作用域(Scope)和生命周期**对象生命周期和依赖注入框架**SqlSessionFactoryBuilderSqlSessionFactorySqlSession映射器实例配置属性(prop

几款不错的整站下载工具_寇林2019的博客-程序员宅基地_整站下载

有的人利用整站下载工具下载网站到本地进行慢慢的欣赏,有的人利用全站下载工具创建垃圾站。不管你是出于什么样的目的,下面这些工具软件你可以会需要。TeleportUltraTeleport Ultra所能做的,不仅仅是离线浏览某个网页(让你离线快速浏览某个网页的内容当然是它的一项重要功能),它可以从Internet的任何地方抓回你想要的任何文件,它可以在你指定的时间自动登录到你指定的网站下载你指定...

推荐文章

热门文章

相关标签