Spring Boot 无法从属性文件中提取数据

qltillow  于 2022-11-29  发布在  Spring
关注(0)|答案(1)|浏览(142)

在我当前的应用程序中,我有一个属性文件,其中包含student的某些属性,我正在编写一个类,其中包含一个主函数来提取这些属性,我使用了下面的代码,但我得到的所有属性都是空值,我尝试使用getproperty(),它工作正常,但我需要使用@Value来完成此操作。有什么解决方案吗?

@Configuration
@PropertySource("classpath:sample.properties")
public class Test
{
  @Value("${student.name}")
  private String name;

 public void test()
 {
  System.out.println("name "+name);
 }
 public static void main(String args[])
 {
   Test t=new Test();
   t.test();
 }

我越来越
名称=空

qco9c6ql

qco9c6ql1#

您的测试类,

@Configuration
public class Tester {
    @Value("${student.name}")
    private String name;
     
    public String getName(){
       return name;
    }
}

您应该像下面这样使用SpringBoot提供的应用程序上下文,

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication application = new SpringApplication(DemoApplication.class);
        ApplicationContext context = application.run(args);

        // you can get object of any class like this.
        Test testObj = context.getBean(Test.class);  
        System.out.println("Student Name : "+testObj.getName());
    }
}

希望能有所帮助。

相关问题