@PropertySource和@ImportResource

person.properties

person.name=admin

person.address=shanghai

person.email=123@qq.com

person.user-card=321321

person.map.k1=v1

person.map.k2=v2

@PropertySource

将指定加载自定义的yml,properties配置文件

 

@Component
@PropertySource(value = {"classpath:person.properties"})
@ConfigurationProperties(prefix = "person")
@Validated
public class Person {
    private String name;
    private String address;
    @Email
    private String email;
    private String userCard;
    private Map<String, Object> map;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getAddress() {
        return address;
    }
    public void setAddress(String address) {
        this.address = address;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public String getUserCard() {
        return userCard;
    }
    public void setUserCard(String userCard) {
        this.userCard = userCard;
    }
    public Map<String, Object> getMap() {
        return map;
    }
    public void setMap(Map<String, Object> map) {
        this.map = map;
    }
    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", address='" + address + '\'' +
                ", email='" + email + '\'' +
                ", userCard='" + userCard + '\'' +
                ", map=" + map +
                '}';
    }
}

@ImportResource

在配置文件下定义一个spring.xml

<?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="personXml" class="com.gnq.springboot.bean.Person"></bean>

</beans>
@SpringBootApplication
@EnableConfigurationProperties
@ImportResource({"classpath:spring.xml"})
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

 

@Autowired
private ApplicationContext applicationContext;
@Test
public void testImportResource(){
    boolean hasPerson = applicationContext.containsBean("personXml");
    System.out.println(hasPerson);
}

输出

true

 

总结:

@ImportResource用来加载spring的xml配置

@PropertySource用来加载自定义的yml和properties配置

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值