当前位置: 首页 > 知识库问答 >
问题:

属性从应用程序读取。属性返回null

狄元魁
2023-03-14

我是springboot的新手,我正在尝试从application.properties文件的位置(src/main/resources)读取属性值。但它总是返回NULL。我也需要帮助。附加类和属性文件。请注意:我试过“https://www.baeldung.com/properties-with-spring”如何访问Spring Boot中application.properties文件中定义的值。但这对从application.properties文件中获取值没有帮助。

    @SpringBootApplication
    @EnableAutoConfiguration
    @PropertySource("classpath:application.properties")
    public class Application {

        public static void main(String[] args) {

            SpringApplication.run(Application.class, args);
            SampleTest ap=new SampleTest();
            System.out.println("+++++++++++++ "+ap.returnvalue());

        }


    @Configuration
    @PropertySource("classpath:application.properties")
    public class SampleTest {

        @Value("${testValue}")
        String value1;

        public String returnvalue()
        {
            return value1;
        }
    }

application.properties文件

        testValue=Value from application
    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.2.1.RELEASE</version>
            <relativePath/> <!-- lookup parent from repository -->
        </parent>
        <groupId>ReadValue</groupId>
        <artifactId>com.read.vale</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <name>com.read.vale</name>
        <description>Demo project for Spring Boot</description>

        <properties>
            <java.version>1.8</java.version>
        </properties>

        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>

            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
                <exclusions>
                    <exclusion>
                        <groupId>org.junit.vintage</groupId>
                        <artifactId>junit-vintage-engine</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
        </dependencies>

        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
            </plugins>
        </build>

    </project>

共有1个答案

夹谷硕
2023-03-14

试试看:

public static void main(String[] args) {

   ApplicationContext ctx = SpringApplication.run(Application.class, args);
   SampleTest ap = ctx.getBean(SampleTest.class);
   System.out.println("+++++++++++++ "+ap.returnvalue());

    }
 类似资料:
  • 问题内容: 我对spring / java相当陌生,并且一直在为我正在工作的项目检查spring- boot。我一直在遵循指南,最后有一个(半)运行中的Web应用程序MVC + JPA用于数据访问。当我通过Jar方法部署应用程序时,一切正常: 但是,我们的应用程序最终将部署到Tomcat(v7.0.40),因此我需要从项目中创建一个war文件。我已经在spring.io网站上遵循了将jars转换为

  • 我有一个spring boot项目,当我从2015.3 IDE运行它时,它编译并运行良好,但从2016.1运行时,它在启动时崩溃,但这是因为配置似乎被破坏了。我的发现如下: 似乎从ide中可以看到应用程序。属性文件不受尊重,我可以在应用程序日志中看到未设置配置文件,而在上述文件中实际设置了活动配置文件。 我可以毫无问题地重建项目。 如果从命令行调用,编译后的jar可以工作。 应用程序。属性位于sr

  • src/main/resources/application.properti 为了完整起见,这里是build.gradle: 我构建应用程序:

  • 我试图在Spring Boot中实现基于配置文件的应用程序,这显然适用于Spring Boot。但是当我试图在弹性搜索APM中实现它时,它不起作用。 根据这里的说法:我们可以用弹性来描述这样的性质。apm前缀: 但它不起作用。当我用elasticapm.properties打电话时,它起作用了。 你有什么建议吗?

  • 我正在开发一个Spring Boot应用程序,我使用application.properties配置db连接、服务器端口等。 例如,如何在application.properties中实现以下XML配置

  • 我正在使用Selenium进行iOS移动应用测试。我在使用相应的 我正在使用一个shell脚本来帮助我检查ios\u webkit\u debug\u代理是否可用。如果不存在,它将在2秒内启动ios\u webkit\u debug\u代理。 我的测试很顺利。但在appium中仍然面临一些问题,appium被停止肯定会给出一个 我试着用各种方法来解决这个问题。 重新启动Appium并再次运行。 但