您当前的位置: 首页 >  spring

小志的博客

暂无认证

  • 0浏览

    0关注

    1217博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

spring属性赋值——@PropertySource加载外部配置文件示例

小志的博客 发布时间:2019-11-20 09:51:41 ,浏览量:0

1、创建一个maven项目(创建maven项目过程省略),pom.xml文件引入如下依赖:


	org.springframework
	spring-context
	5.2.0.RELEASE


	junit
	junit
	4.12
	test



2、创建Employee实体类,代码如下:

package com.rf.bean;

import org.springframework.beans.factory.annotation.Value;

public class Employee {
	//使用@Value赋值;
	//1、基本数值
	//2、可以写SpEL; #{}
	//3、可以写${};取出配置文件【properties】中的值(在运行环境变量里面的值)
	@Value("${employee.id}")//取出配置文件【properties】中的值
	private Integer id;
	@Value("张三")
	private String name;
	@Value("#{23-3}")
	private Integer age;
	
	private Integer did; //部门id
	
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Integer getAge() {
		return age;
	}
	public void setAge(Integer age) {
		this.age = age;
	}
	
	public Integer getDid() {
		return did;
	}
	public void setDid(Integer did) {
		this.did = did;
	}
	
	@Override
	public String toString() {
		return "Employee [id=" + id + ", name=" + name + ", age=" + age + ", did=" + did + "]";
	}

}

3、创建employee.properties配置文件

employee.id=12

4、创建bean.xml文件,代码如下:



    
  	


5、编写配置类,代码如下:

package com.rf.config;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;

import com.rf.bean.Employee;

//使用@PropertySource读取外部配置文件中的k/v保存到运行的环境变量中;
//加载完外部的配置文件以后使用${}取出配置文件的值
@PropertySource(value="classpath:employee.properties") 
//标记这是一个配置类
@Configuration 
public class MyConfig {
	
	@Bean
	public Employee employee(){
		return new Employee();
	}
}

6、编写测试类,代码如下:

package com.rf.test;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;

import com.rf.config.MyConfig;

public class Test1 {
	
	@org.junit.Test	
	public void test1(){
		
		AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class);
		System.out.println("ioc容器创建完成了。。。。");
		Object bean = ctx.getBean("employee");
		System.out.println(bean);
		//关闭容器执行销毁方法 
		ctx.close();
	}
}

在这里插入图片描述

关注
打赏
1661269038
查看更多评论
立即登录/注册

微信扫码登录

0.0722s