一、Spring注解——PropertySource
配置类 package com.ysy.config;
import com.ysy.Person;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
/**
- @author shanyangyang
- @date 2020/6/2
*/
//使用PropertySource读取外部文件中的k/v保存到运行的环境变量中
@PropertySource(value = https://www.it610.com/article/{“classpath:/person.properties”})
@Configuration
public class MainConfigOfPropertyValue {
@Bean
public Person person(){
return new Person();
}
配置文件 【四|Spring使用——读取properties配置文件】
文章图片
实体类多种赋值方式
package com.ysy;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
/**
* @author shanyangyang
* @date 2020/5/22
*/
public class Person {
//使用@value赋值
//1、基本数值
//2、可以写SPEL表达式 #{}
//3、可以写${},取出配置文件中的值(运行的环境变量中的值)
@Value("ysy")
private String name;
@Value("#{10+18}")
private Integer age;
@Value("${person.nickName}")
private String nickName;
public Person() {
} public Person(String name, Integer age) {
this.name = name;
this.age = age;
} 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 String getNickName() {
return nickName;
} public void setNickName(String nickName) {
this.nickName = nickName;
} @Override public String toString() {
return "Person{" + "name='" + name + '\'' + ", age=" + age + ", nickName='" + nickName + '\'' + '}';
}
}
测试类
package com.ysy.test;
import com.ysy.config.MainConfigOfProfile;
import org.junit.Test;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
/**
* @author shanyangyang
* @date 2020/6/8 */
public class IOCTestOfProfile {
//AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(MainConfigOfProfile.class);
//1、使用命令行动态参数,在虚拟机参数位置加载:-Dspring.profiles.active=test
//2、创建一个AnnotationConfigApplicationContext对象,无参构造器;
设置需要激活的环境;注册配置类,启动刷新容器
@Test
public void test01(){
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext();
context.getEnvironment().setActiveProfiles("testA");
context.register(MainConfigOfProfile.class);
context.refresh();
print(context);
} private void print(AnnotationConfigApplicationContext context) {
String[] beanDefinitionNames = context.getBeanDefinitionNames();
for (String name:beanDefinitionNames){
System.out.println(name);
}
}
}
二、SpringXML-读取properties配置文件
推荐阅读
- MybatisPlus|Mybatis-Plus实现存储以及读取Java对象
- spring|Spring 读取和存储对象
- 面试|【Spring----对象的读取和存储】
- JavaEE|Spring 创建和使用
- Spring|【Spring】Spring 更简单的读取和存储对象
- Spring|Spring~Spring的创建和使用(如何将对象储存到Spring、如何将对象从Spring中读取出来)
- springmvc|SpringMVC注解版 --PK-- xml版入门案例
- 大数据课设&毕设|大数据接私活200元,做个简易的HDFS浏览器(一)
- 如何向Spring IOC 容器 动态注册bean