Spring 出現Could not resolve placeholder問題的解決方法

項目開發中,使用@value註解獲取不到配置文件裏面的屬性字段。spring

檢查配置文件,在spring的配置文件中有配置讀取,以下:mvc

<!-- 使用spring自帶的佔位符替換功能 -->
    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <!-- 容許JVM參數覆蓋 -->
        <property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE" />
        <!-- 忽略沒有找到的資源文件 -->
        <property name="ignoreResourceNotFound" value="true" />
        <!-- 配置資源文件 -->
        <property name="locations">
            <list>
                <value>classpath:jdbc.properties</value>
                <value>classpath:application.properties</value>
            </list>
        </property>
    </bean>

這是沒有問題的。啓動的時候,也正常,但就是死活獲取不到屬性值。app

通過漫長的嘗試,和查找資料,綜合分析:原來是spring,和springmvc父子容器的問題:spa

springmvc並不能獲取到spring讀取到的配置文件。code

解決方法:在springmvc 配置文件中配置一下掃描,以下:blog

<context:property-placeholder location="classpath:application.properties"/>

問題解決。資源

相關文章
相關標籤/搜索