解决SpringBoot @value注解取不到值的问题

 更新时间:2021年07月06日 10:57:58   作者:FanClys  
这篇文章主要介绍了解决SpringBoot @value注解取不到值的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

关于@value的springapplication容器的问题

1.在src/main/resources下创建stu.properties文件

##
student.name=Tom
student.age=22
student.birthday=1996/01/10
student.sex=true
student.hobbies[0]=swimming
student.hobbies[1]=basketball
student.skills[0]=programming
student.skills[1]=test
student.address.province=henan
student.address.city=zhengzhou

2.创建实体类

package com.fcy.entity;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;
@Component
@PropertySource({"classpath:stu.properties"})
public class Student {
  @Value("${student.name}")
  private String name;
  @Value("${student.age}")
  private int age;
  @Value("${student.sex}")
  private boolean sex;
  @Value("${student.birthday}")
  private Date birthday;
  private String[] hobbies;
  private List<String> skills;
  private Map<String, Object> address;
 //省略getter和setter方法
}

3.错误的方法

@RestController
public class StudentController {
 @RequestMapping("/getStu")
 public Student getStu() {
  Student stu=new Student();
  System.out.println(stu);
  return stu;
 }
}

4. 效果如图

在这里插入图片描述

5.正确的方法为

在这里插入图片描述

总结:

从上面方法得知,第一种方法没有获取到值是因为没有在springapplication容器里获取student的bean,因为在实体类加上了@comment注解,这个注解就是把student变成一个bean,才能读取到,不能new 一个对象调用

SpringBoot @Value注解设置默认值

默认值的设置:

符合SpEL表达式

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • SpringBoot自定义starter方式

    SpringBoot自定义starter方式

    本文介绍了如何创建一个自定义的Spring Boot Starter,以实现日志功能,通过使用SPI机制,可以在不修改启动类的情况下,实现自动配置和功能导入,同时,还讨论了如何在自定义Starter中编写必要的配置文件和注解,以确保功能的正确实现和配置的智能提示
    2025-02-02
  • Spring常用注解汇总

    Spring常用注解汇总

    这篇文章主要介绍了Spring常用注解汇总,需要的朋友可以参考下
    2014-08-08
  • Spring+SpringMVC+MyBatis整合实战(SSM框架)

    Spring+SpringMVC+MyBatis整合实战(SSM框架)

    框架整合难不难?难!东西多,配置文件复杂不好记忆,本文就来介绍一下Spring+SpringMVC+MyBatis整合实战,具有一定的参考价值,感兴趣的可以了解一下
    2021-08-08
  • Java异常之图书管理系统

    Java异常之图书管理系统

    这篇文章主要为大家详细介绍了Java异常之图书管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • java中处理json各种各样的转换方法(推荐)

    java中处理json各种各样的转换方法(推荐)

    下面小编就为大家分享一篇java中处理json各种各样的转换方法小结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-11-11
  • springboot 实现长链接转短链接的示例代码

    springboot 实现长链接转短链接的示例代码

    短链接服务通过将长URL转换成6位短码,并存储长短链接对应关系到数据库中,用户访问短链接时,系统通过查询数据库并重定向到原始URL,实现快速访问,本文就来介绍一下如何使用,感兴趣的可以了解一下
    2024-09-09
  • java父类和子类初始化顺序的深入理解

    java父类和子类初始化顺序的深入理解

    本篇文章是对java父类和子类初始化顺序进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • Java通过SMS短信平台实现发短信功能 含多语言

    Java通过SMS短信平台实现发短信功能 含多语言

    这篇文章主要为大家详细介绍了Java通过SMS短信平台实现发短信功能的相关资料,感兴趣的小伙伴们可以参考一下
    2016-07-07
  • Spring security登录过程逻辑详解

    Spring security登录过程逻辑详解

    这篇文章主要介绍了SSpringsecurity登录过程逻辑详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • 关于SpringBoot使用Redis空指针的问题(不能成功注入的问题)

    关于SpringBoot使用Redis空指针的问题(不能成功注入的问题)

    这篇文章主要介绍了关于SpringBoot使用Redis空指针的问题(不能成功注入的问题),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11

最新评论