0基础学习Springboot之@Data

读取.yml配置文件中的数据创建的java文件时出现了问题,按照之前的案例一点一点来写的但还是出错:

@Component
@ConfigurationProperties(prefix = "information")
public class s_1_1 {
    private String age;
    private String sex;
    private String weight;
    private String height;

    public String getWeight(){
        return weight;
    }
    public void setweight(String weight){
        this.weight=weight;
    }
    public String getSex(){
        return sex;
    }
    public void setSex(){
        this.sex=sex;
    }
    public String getAge(){
        return age;
    }
    public void setAge(){
        this.age=age;
    }
    public String getHeight(){
        return height;
    }
    public void setHeight(){
        this.height=height;
    }
    @Override
    public String toString(){
        return "information{"+
                "age='"+age+
                "sex='"+sex+
                "weight='"+weight+
                "height='"+height;
    }

}

Failed to bind properties under 'information' to com.example.demo报错是这

在网上查阅资料后发现别人的有一个@Data注解,于是我也想着加入以下尝试一下

@Component
@ConfigurationProperties(prefix = "information")
@Data
public class s_1_1 {
    private String age;
    private String sex;
    private String weight;
    private String height;

    public String getWeight(){
        return weight;
    }
    public void setweight(String weight){
        this.weight=weight;
    }
    public String getSex(){
        return sex;
    }
    public void setSex(){
        this.sex=sex;
    }
    public String getAge(){
        return age;
    }
    public void setAge(){
        this.age=age;
    }
    public String getHeight(){
        return height;
    }
    public void setHeight(){
        this.height=height;
    }
    @Override
    public String toString(){
        return "information{"+
                "age='"+age+
                "sex='"+sex+
                "weight='"+weight+
                "height='"+height;
    }

}

还有另外一个java文件是这样子的:

@Controller
public class controller {
    private final Logger logger = LoggerFactory.getLogger( this.getClass());
    private final Logger logger1 = LoggerFactory.getLogger( this.getClass());
    @Autowired
    s_1 multienvConfig;
    @GetMapping ("/hello")
    public String index(){
        logger.info(multienvConfig.getDemoname());
        return "index";
    }
    @Autowired
    s_1_1 s11;
    @GetMapping("/sgl")
    public String index1(){
        logger1.info(s11.getWeight());
        logger1.info(s11.getHeight());
        logger1.info(s11.getAge());
        logger1.info(s11.getSex());
        return "HEIGHT";
    }
}

就可以执行,在浏览器界面中加载后可以运行

 于是上网查阅资料,发现@Data注解是简化代码使用的,于是代码改成:

@Component
@ConfigurationProperties(prefix = "information")
@Data
public class s_1_1 {
    private String age;
    private String sex;
    private String weight;
    private String height;
}

也可以使用。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值