springBoot属性赋值

springBoot属性赋值

方式一:@ConfigurationProperties

用户类

@Component
@ConfigurationProperties(prefix = "user") //与配置文件的user绑定
public class UserInfo {
    
    
 private  int id;
 private  String uname;
 private  int uage;
 private Department department;

    public int getId() {
    
    
        return id;
    }

    public void setId(int id) {
    
    
        this.id = id;
    }

    public String getUname() {
    
    
        return uname;
    }

    public void setUname(String uname) {
    
    
        this.uname = uname;
    }

    public int getUage() {
    
    
        return uage;
    }

    public void setUage(int uage) {
    
    
        this.uage = uage;
    }

    public Department getDepartment() {
    
    
        return department;
    }

    public void setDepartment(Department department) {
    
    
        this.department = department;
    }

    @Override
    public String toString() {
    
    
        return "UserInfo{" +
                "id=" + id +
                ", uname='" + uname + '\'' +
                ", uage=" + uage +
                ", department=" + department +
                '}';
    }
}

部门类

public class Department {
    
    
    private  int id;
    private  String  name;
    private String  code;

    public int getId() {
    
    
        return id;
    }

    public void setId(int id) {
    
    
        this.id = id;
    }

    public String getName() {
    
    
        return name;
    }

    public void setName(String name) {
    
    
        this.name = name;
    }

    public String getCode() {
    
    
        return code;
    }

    public void setCode(String code) {
    
    
        this.code = code;
    }

    @Override
    public String toString() {
    
    
        return "Department{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", code='" + code + '\'' +
                '}';
    }
}

yml配置文件

user:
  uname: liufucheng
  uage: 23
  department:
    name: 开发部
    code: 002

单元测试

   @Autowired
    UserInfo userInfo;
    @Test
    public void printUserInfo(){
    
    
        System.out.println(userInfo);
    }

方式二:@Value

@Component
public class UserInfo {
    
    
 private  int id;
 @Value("liufucheng")
 private  String uname;
 private  int uage;
 private Department department;

    public int getId() {
    
    
        return id;
    }

    public void setId(int id) {
    
    
        this.id = id;
    }

    public String getUname() {
    
    
        return uname;
    }

    public void setUname(String uname) {
    
    
        this.uname = uname;
    }

    public int getUage() {
    
    
        return uage;
    }

    public void setUage(int uage) {
    
    
        this.uage = uage;
    }

    public Department getDepartment() {
    
    
        return department;
    }

    public void setDepartment(Department department) {
    
    
        this.department = department;
    }

    @Override
    public String toString() {
    
    
        return "UserInfo{" +
                "id=" + id +
                ", uname='" + uname + '\'' +
                ", uage=" + uage +
                ", department=" + department +
                '}';
    }
}

方式三:@PropertySource

新建liufucheng.properties

name=liufucheng
age=23

用户类

@Component
@PropertySource(value = "classpath:liufucheng.properties")  //绑定配置文件
public class UserInfo {
    
    
 private  int id;
 @Value("${name}")   //从配置文件取值
 private  String uname;
 @Value("${age}")
 private  int uage;
 private Department department;

    public int getId() {
    
    
        return id;
    }

    public void setId(int id) {
    
    
        this.id = id;
    }

    public String getUname() {
    
    
        return uname;
    }

    public void setUname(String uname) {
    
    
        this.uname = uname;
    }

    public int getUage() {
    
    
        return uage;
    }

    public void setUage(int uage) {
    
    
        this.uage = uage;
    }

    public Department getDepartment() {
    
    
        return department;
    }

    public void setDepartment(Department department) {
    
    
        this.department = department;
    }

    @Override
    public String toString() {
    
    
        return "UserInfo{" +
                "id=" + id +
                ", uname='" + uname + '\'' +
                ", uage=" + uage +
                ", department=" + department +
                '}';
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_45742032/article/details/113866310