【Spring Boot】07 @PropertySource 和 @ImportResource

@PropertySource 和 @ImportResource

    • @**PropertySource** :加载指定的配置文件
    • @**ImportResource**:导入 Spring 的配置文件,让配置文件里面的内容生效
    • SpringBoot 推荐给容器中添加组件的方式:推荐使用权注解的方式
        • 1、配置类 —— Spring 配置文件
        • 2、使用 @Bean 给容器中添加组件

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

@PropertySource(value = {"classpath:person.properties"})
@Component
public class Person {
    private String lastName;
    private Integer age;
    private Boolean boss;
    private Date birth;

    private Map<String, Object> maps;
    private List<Object> lists;
    private Dog dog;

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

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

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

package com.memory.springboot;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ImportResource;

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

    public static void main(String[] args) {
        SpringApplication.run(SpringBoot02ConfigApplication.class, args);
    }
}

不来编写 Spring 的配置文件


<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.memory.springboot.service.HelloService">bean>
beans>

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

1、配置类 —— Spring 配置文件

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

package com.memory.springboot.config;

import com.memory.springboot.service.HelloService;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

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

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

你可能感兴趣的:(Spring,Boot,Spring,Boot,的学习记录)