1.使用@ConfigurationProperties并加入前缀,并使用@Component将其注册在Spring容器中。
1.1编写Bean
package com.wanna.springboot.bean;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties(prefix = "user")
public class UserBean {
int id;
String username;
String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
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 "UserBean{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
}
1.2yaml配置文件/properties配置文件(均可)
user:
id: 123
username: wanna
password: 123456
user.id=1
user.username=wanna
user.password=123456
2.使用@ConfigurationProperties注解并加入前缀并且在配置类上加入@EnableConfigurationProperties(UserBean.class)注解
2.1 配置类
package com.wanna.springboot.config;
import com.wanna.springboot.bean.UserBean;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Configuration;
@Configuration
@EnableConfigurationProperties(UserBean.class)
public class MyConfig {
}
2.2 Bean
package com.wanna.springboot.bean;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;
//@Component
@ConfigurationProperties(prefix = "userbean")
public class UserBean {
int id;
String username;
String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
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 "UserBean{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
}
2.3 配置文件和1中一样
3.读取Spring的xml配置文件,使用@ImportResources
3.1 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="userBean" class="com.wanna.springboot.bean.UserBean">
<property name="id" value="2"/>
<property name="username" value="wanna"/>
<property name="password" value="1234567"/>
</bean>
</beans>
3.2 Bean(头上没有注解)
package com.wanna.springboot.bean;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;
public class UserBean {
int id;
String username;
String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
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 "UserBean{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
}
3.3 配置类
package com.wanna.springboot.config;
import com.wanna.springboot.bean.UserBean;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.ImportResource;
@Configuration
@ImportResource("classpath:ApplicationContext.xml")
public class MyConfig {
}
网友评论