Spring 从自定义类中获取配置文件对象
- 定义一个配置文件类,包含所需的所需。
- 定义一个配置文件信息类,用来存储配置文件类对象,注解标记。
- 获取配置文件对象。
定义一个配置文件类,包含所需的所需
package com.bb.pojo;
public class DbDataSource {
private String url ;
private String userName;
private String password;
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public String toString() {
return "DbDataSource [url=" + url + ", userName=" + userName + ", password=" + password + "]";
}
}
定义一个配置文件信息类,用来存储配置文件类对象,注解标记
JavaConfig
中存储了两个 DbDataSource
对象,并用注解进行了标记
package com.bb;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
import com.bb.pojo.DbDataSource;
@Configuration
public class JavaConfig {
@Bean
@Profile("test")
public DbDataSource getTestds(){
DbDataSource ds = new DbDataSource();
ds.setUrl("http://192.168.1.180/test/...");
ds.setUserName("admin");
ds.setPassword("123456");
return ds;
}
@Bean
@Profile("dev")
public DbDataSource getDevds(){
DbDataSource ds = new DbDataSource();
ds.setUrl("http://192.168.1.188/dev/...");
ds.setUserName("root");
ds.setPassword("root");
return ds;
}
}
获取配置文件对象
public static void main(String[] args) {
AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext();
ac.getEnvironment().setActiveProfiles("dev");
ac.register(JavaConfig.class);
ac.refresh();
DbDataSource source = ac.getBean(DbDataSource.class);
System.out.println(source);
}
输出打印
DbDataSource [url=http://192.168.1.188/dev/..., userName=root, password=root]
总结:纯java文件形式打印配置文件,存储配置文件(也可以使用xml方式存储,见姊妹篇),获取配置文件信息。
项目打包 提取码:ycno
环境:eclipse